我有一个简单的需要。在Python 2.7上使用最新的Selenium-RC Server和Selenium Client,我只想找到一种常见的方式来了解浏览器何时无法访问页面(例如当IE8抛出错误时'Internet Explorer无法显示网页')。实际上,
我希望Selenium异常/超时与浏览器超时同步!!
这是我面临的问题的一个例子。
当我运行这些简单的Python代码时,结果因浏览器而异... 代码 -
>>> from selenium import selenium
>>> s1 = selenium('localhost', 4444, '*iexplore', 'http:///')
>>> s1.start()
>>> s1.open('http://xxxxxxxx')
>>> s1.open('http://1.1.1.1')
对于IE8,页面显示“Internet Explorer无法显示网页”,但Selenium不会抛出任何异常!意思是,未达到Selenium的默认超时。
对于Firefox,该页面显示“未找到服务器”,Selenium等待超时,最后超时发出此错误 -
>>> s1.open('http://xxxxxxxx')
Traceback (most recent call last):
File "<interactive input>", line 1, in <module>
File "C:\Python27\lib\site-packages\selenium-2.11.1-py2.7.egg\selenium\selenium.py", line 774, in open
self.do_command("open", [url,ignoreResponseCode])
File "C:\Python27\lib\site-packages\selenium-2.11.1-py2.7.egg\selenium\selenium.py", line 214, in do_command
raise Exception, data
Exception: Timed out after 30000ms
>>>
当我使用Firefox执行s1.open('http://1.1.1.1')时也是如此。
为什么会有区别?