如何在django项目中使用Selenium(LiveServerTestCase)并行运行测试?

时间:2013-05-08 19:30:13

标签: django testing selenium parallel-processing

问题在于:

我有一个继承自LiveServerTestCase的类。这个类模仿一些用户(客户端)的工作 - 去网站,填写一些字段,添加文件。 我需要模仿多用户工作,所以我需要并行运行这个类(函数)。

有没有办法做到这一点,只需使用标准python的东西,如线程,进程和Selenium-2?如果没有,请写一些你的建议的简单例子。

谢谢!

1 个答案:

答案 0 :(得分:0)

就个人而言,我通常会根据multi-mechanizelocust等工具区分功能(系统)django测试和性能/负载/多用户测试。

这是你可以试试的。

Nose可以在parallel中运行您的测试(另请参阅django_nose)。但是,你可能有几个问题:

  • 就每个LiveServerTestCase打开localhost:port上的浏览器而言,您应该为其提供一个要使用的端口列表,以避免This port is already in use错误:

    ./manage.py test --liveserver=localhost:8082,8090-8100,9000-9200,7041
    
  • 可能,LiveServerTestCases创建和截断数据库表会导致测试失败(行为可以改变)

另见: