我在Perl语言绑定下使用Selenium Webdriver(2.0)和Firefox 20.它非常慢。例如,一个常见操作是使用ID和密码填写几个<input type="text">
字段。我可以比Selenium以'send_keys'方法快2至3倍的速度输入它。定位元素,例如在大表格中具有特定文本的表格单元格,就像看油漆干燥一样。
我认为可能存在某种默认速度设置未达到最高值,但get_speed和set_speed方法已被删除。那么,Selenium是否已经平稳运行,或者是否有一些我可以调整的设置?我已经看到很多关于如何减慢 Selenium的问题,但此时我正在寻找如何加速。如果有必要,我会担心以后会放慢速度。
因为即使是“原子”操作(例如将文本输入到输入字段中)也是如此之慢,我认为使用XPath定位器而不是CSS或Perl而不是其他语言是一个问题。有人建议我尝试Chrome而不是FF - 它可以帮助 吗?我在表格单元格中进行了很多定位文本,因此很遗憾CSS定位器的价值有限。
非常感谢您对此的任何帮助!如果这个测试自动化并不比手动运行测试快,我会看起来很糟糕!
答案 0 :(得分:2)
派对有点晚了,但幻影驱动程序http://phantomjs.org/没有使用屏幕驱动程序,可以连接到selenium。
./phantomjs --webdriver=5556 --webdriver-selenium-grid-hub=http://localhost:4444
或将其链接到远程集线器
答案 1 :(得分:0)
这可能不是直接适用的,但您可以按照一些简单的提示来首先调查大部分时间花在哪里。看看下面的文章:
https://blog.mavenhive.in/7-tips-to-speed-up-your-webdriver-tests-4f4d043ad581
我猜大多数这些都是通用的步骤,无论用于测试的工具如何都适用。
答案 2 :(得分:0)
对于任何遇到此问题的人:
硒测试已经有了很多发展,并且运行速度比以前快。
但是为了使测试运行更快,请使用headless
模式,该模式不会打开任何测试窗口。在chromedriver
和geckodriver
中都可用。