我正在使用该方法 executeScript
在 selenium web driver 中,我发现了一个问题:
js.executeScript("var b='1'; ");
js.executeScript("alert(b)");
运行上面的代码后,我想得到一个值为
1
的警报窗口,但它说:b is not defined
我的问题是:我定义了
b
作为全局变量,但为什么我以后不能得到它?
最佳答案
将变量定义为
var b='1'
将范围限制为脚本的执行。 Selenium 将 javascript 片段的执行包装到它们自己的脚本中,因此您的变量不会在脚本结束后继续存在。尝试
window.b = '1';
然后后来
alert(window.b);
将变量放入全局范围。
关于selenium - 方法executeScript(selenium web driver)不能定义全局变量供以后使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13858096/