我在Python中使用Selenium编写了一个非常简单的网页测试
这里是代码:
from selenium import webdriver
import unittest
from selenium.webdriver.common.keys import Keys
class NewVisitorTest(unittest.TestCase):
def setUp(self):
# cose da fare prima dei test
self.browser = webdriver.Firefox() # Opera? credo sia usabile :D
def tearDown(self):
# cose da fare dopo dei test
self.browser.quit()
def test_yahoo(self):
# browser = webdriver.Firefox() # Get local session of firefox
pagina = "http://ricordandoti.net/it/app-per-scoprire-il-cimitero-del-poblenou/"
self.browser.get(pagina) # Load page
self.browser.implicitly_wait(5) # aspetto si carichi tutta la pagina
# forzando di aspettare 3 s
assert "Ricordandoti" in self.browser.title
if __name__ == '__main__': # 7
unittest.main(warnings='ignore')
它有效,但执行需要几分钟:
> Running: /home/.../tests/functional_tests_ricord.py (Wed Jan 21 13:32:05 2015)
>
> .
> ---------------------------------------------------------------------- Ran 1 test in 60.798s
>
> OK
我使用ninja IDE编写代码(在Ubuntu 14.04机器中)。 这似乎是原因。
直接从shell执行代码,需要20秒:
> subu@VR46-U:~$ python3 "/home/.../tests/functional_tests_ricord.py"
.
----------------------------------------------------------------------
Ran 1 test in 20.865s
OK
我可以做些什么来加快执行速度?
答案 0 :(得分:1)
以下内容应该为您加快速度:
将selenium
升级到最新版本(目前为2.44.0
)
pip3 install selenium --upgrade
将firefox
升级到最新版本(目前为35.0
)
在升级之前,我的速度比较慢,现在是:
$ python3 test.py
.
----------------------------------------------------------------------
Ran 1 test in 6.258s
OK