如何在不打开浏览器并使用每个函数的情况下运行 PHPUnit Selenium 测试用例?
目前,我有一个扩展 PHPUnit_Extensions_SeleniumTestCase 的 PHPUnit 测试用例。每个启动的函数都需要 $this->setBrowserUrl() 并且默认在每个函数调用时启动一个新的 Firefox 浏览器窗口。
我想要一个测试用例,为特定功能启动浏览器,但不为其他功能启动浏览器,以节省打开和关闭浏览器所需的资源和时间。我可以有这样的文件吗?
Currently, I have a PHPUnit test case that extends PHPUnit_Extensions_SeleniumTestCase. Each function that starts requires a $this->setBrowserUrl() and defaults to starting a new Firefox browser window with each function call.
I want to have a test case that launches the browser for specific functions, but not launch the browser for other functions, as to save the resources and time it takes in opening and closing the browser. Is it possible for me to have such a file?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您最好的选择可能是创建两个单独的测试套件,一个使用 Selenium 命令,另一个不使用任何 Selenium 功能。
You best option is probably to create two separate test suites, one that uses uses Selenium commands and the other that does not use any Selenium functionality..
使用 PHPUnit 注释找到了一个自定义解决方案(并写了一篇关于它的博客文章!)
http:// /blog.behance.net/dev/custom-phpunit-annotations
编辑:在此处添加一些代码,以使我的答案更完整:)
简而言之,使用自定义注释。在 setUp() 中,解析文档块以获取注释,并标记具有不同质量的测试。这将允许您标记某些测试以使用浏览器运行,以及某些测试不使用浏览器运行。
Figured out a custom solution using PHPUnit annotations (and wrote a blog post about it!)
http://blog.behance.net/dev/custom-phpunit-annotations
EDIT: Adding some code here, as to make my answer more complete :)
In short, use custom annotations. In your setUp(), parse the doc block to grab annotations, and tag tests with different qualities. This would allow you to tag certain tests to run with a browser, and certain tests to run without.