编程语言
首页 > 编程语言> > python – 带有splinter和phantomjs的Django非常缓慢

python – 带有splinter和phantomjs的Django非常缓慢

作者:互联网

今天我尝试将django的LiveServerTestCase与splinter和phantomjs webdriver结合起来.

这是我做的(简化版):

class Test(LiveServerTestCase):

    def setUp(self):
        self.browser = Browser('phantomjs')

    def tearDown(self):
        self.browser.quit()

    def test(self):
        self.browser.visit(self.live_server_url)
        self.assertIn("Hello world!", self.browser.title)

有时测试运行正常 – 即使每个测试方法执行第二次.但有时它可以随机地花费约100秒来执行单个测试方法,或者它只是冻结,直到我没有耐心等待它完成.

我使用django_nose作为测试运行器,并将–liveserver = localhost:8081-8181端口范围传递给./manage.py测试命令.

有没有办法加快速度?是否有其他网络测试跑步者哪个更快?

默认的Web驱动程序似乎在速度方面更可靠(每个测试方法1-3秒),但它仍然很慢.我也更喜欢无头浏览器进行测试.

解决方法:

使测试变慢的原因是打开并在每次测试时关闭浏览器.一种改善测试时间的方法是打开浏览器一次.你可以使用setUpClass和tearDownClass来完成它.

标签:python,django,selenium,phantomjs,splinter
来源: https://codeday.me/bug/20190825/1717803.html