如何从Selenium获取JavaScript值?

时间:2012-09-02 01:45:31

标签: java javascript selenium

我正在运行以下代码(Java selenium客户端) - PAGE_NUMBER有一个值,但我无法使用selenium获取它:

String script = "var cellValue = selenium.browserbot.getUserWindow().PAGE_NUMBER;";
selenium.runScript(script);

String value = selenium.getEval("selenium.browserbot.getUserWindow().cellValue;");
System.out.println("Value: " + value);

1 个答案:

答案 0 :(得分:2)

我根本不知道Selenium 1和Selenium2 / Webdriver是非常不同的。但是,我怀疑在这个问题上有三件事情可以发挥作用:

  1. 范围:您将变量声明为脚本范围的本地变量(通过编写var)。您可以通过省略var关键字来尝试使用全局变量,以便以后可以访问它。
  2. 为什么要尝试通过selenium.browserbot.getUserWindow().访问变量。尝试省略这部分。
  3. cellValue之后的分号可能不是一个好主意
  4. 然后,为什么不简单地使用

    String value = selenium.getEval("selenium.browserbot.getUserWindow().PAGE_NUMBER");
    

    我希望这个答案中至少有一部分可以帮到你。正如我所说,我只是在猜测。