Dav*_*tom 5 python django selenium
我希望能够编写一个运行Selenium测试的Django LiveServerTestCase,该测试已使用Selenium IDE保存为HTML.代码可能如下所示:
from django.test import LiveServerTestCase
from selenium.webdriver.firefox.webdriver import WebDriver
class TestUserStories(LiveServerTestCase):
@classmethod
def setUpClass(cls):
cls.selenium = WebDriver()
super(MySeleniumTests, cls).setUpClass()
def test_registration(self):
# Note - 'run_html_test' doesn't exist
self.selenium.run_html_test('selenium/registration.html')
Run Code Online (Sandbox Code Playgroud)
这将允许我们的QA团队(不会说python)使用Firefox Selenium IDE编写测试并将其另存为HTML.这可能吗?
据我所知,HTML是保存测试的最佳格式,因为它允许稍后在IDE中进行编辑 - 导出到python不允许这样做,并且还生成需要转换为使用Django的python LiveServerTestCase.
我自己启动了一个项目来构建这种垫片:用 Python 包装现有的基于 HTML 的 Selenium 测试,而无需转换现有的测试。这与您所说的原因相同:(客户端)测试团队想要编写 HTML Selenium 测试,但我们希望使用 Selenium RC 运行它们。这是链接:
https://github.com/jpstacey/PySelenese
然而,我们封存了它所针对的具体子项目,因此它很长一段时间没有受到任何关注。
对于您的特定请求,编写独立的 LiveServerTestCase 并不是最佳选择,因为这样您就失去了 Selenium 在一个套件中拥有许多测试用例以及一个套件 index.html 来定义它的想法。PySelenese 而是包装整个测试套件并按照 Selenium IDE 运行它的顺序运行其中的所有测试用例;但我承认目前执行此操作的代码不是很漂亮,并且可能更Pythonic。
但理论上这可以做你想做的事,所以请随意尝试一下,分叉 github 项目,进行自己的更改等。PySelenese 层目前对许多 Selenium 命令的支持有限,但相当可扩展。
(明确免责声明:PySelenese 最初是我自己的个人 Github 项目。)
| 归档时间: |
|
| 查看次数: |
397 次 |
| 最近记录: |