我正在使用Selenium和Python,我尝试做两件事:导入外部javascript文件并执行其中定义的方法
在字符串上定义方法并在计算后调用它们
这是第一种情况的输出:
测试.jsfunction hello(){
document.body.innerHTML = "testing";
}
Python代码>>> from selenium import webdriver
>>> f = webdriver.Firefox()
>>> f.execute_script("var s=document.createElement('script');\
... s.src='file://C:/test.js';\
... s.type = 'text/javascript';\
... document.head.appendChild(s)")
>>> f.execute_script("hello")
Traceback (most recent call last):
File "", line 1, in
File "C:\Python27\lib\site-packages\selenium-2.41.0-py2.7.egg\selenium\webdriver\remote\webdriver.py", line 394, in execute_script
{'script': script, 'args':converted_args})['value']
File "C:\Python27\lib\site-packages\selenium-2.41.0-py2.7.egg\selenium\webdriver\remote\webdriver.py", line 166, in execute

在使用Selenium和Python进行自动化测试时,遇到调用外部JavaScript文件和执行其中方法的挑战。尝试通过`execute_script`方法导入JS文件并执行hello()函数,但收到'hello is not defined'的错误。同样,直接在Python中定义函数blah()并尝试执行,也收到相同的未定义错误。问题出在Selenium无法识别这些自定义的JavaScript函数。
最低0.47元/天 解锁文章
930

被折叠的 条评论
为什么被折叠?



