我想知道是否可以使用Selenium访问页面JavaScript变量。我有一个应用程序正在使用附加到窗口对象的变量。它具有全局范围,我可以使用window._myvar
,window['_myvar']
,_myvar
,this['_myvar']
,this._myvar
来访问它,具体取决于上下文。
所以我试图让Selenium回应它。据我所知,在Selenium IDE中,一切运行的上下文是selenium
。我尝试this.browserbot.getCurrentWindow()._myvar
,this.browserbot.getCurrentWindow()[_myvar]
无效。我遇到了以下错误Unexpected Exception: message -> eval(match[1]) is undefined
。
有人设法访问他们网页的JavaScript吗?
答案 0 :(得分:17)
您应该能够使用getUserWindow而不是getCurrentWindow来获取变量。请参阅以下示例:
assertEval | this.browserbot.getUserWindow().myVar | Hello World!