【发布时间】:2014-09-10 10:09:54
【问题描述】:
我是测试领域的初学者。我知道 Selenium 是显示自动 Web 测试的最佳开源工具。但是 Selenium 需要另一个工具来驱动它的测试脚本。我真正想知道的是,将 Selenium 与 JUnit 结合是否是目前业界测试 Web 应用程序的最佳实践。如果不是,那么在行业中展示 Selenium 测试的最佳做法是什么?
【问题讨论】:
标签: java testing selenium junit
我是测试领域的初学者。我知道 Selenium 是显示自动 Web 测试的最佳开源工具。但是 Selenium 需要另一个工具来驱动它的测试脚本。我真正想知道的是,将 Selenium 与 JUnit 结合是否是目前业界测试 Web 应用程序的最佳实践。如果不是,那么在行业中展示 Selenium 测试的最佳做法是什么?
【问题讨论】:
标签: java testing selenium junit
如果谈论网络浏览器“模拟器”,那么到目前为止基本上有 2 个最受欢迎和最发达的引擎:HtmlUnit 和 Selenium 及其驱动程序。
Selenium实际上是启动指定的浏览器并直接向它发送命令,这意味着模拟的质量非常接近真实的。
HtmlUnit 只是尝试模拟不同的浏览器功能而不实际启动它们,这意味着模拟的质量要差得多。
根据我的经验,Selenium 与它的 ChromeDriver 能够成功加载 heavy JS 页面并对其执行操作,而 HtmlUnit 甚至失败经过几个小时使用不同的配置选项对其进行调整。
在这些方面,我认为 Selenium 是迄今为止最好的模拟引擎。
现在,关于测试框架:有 JUnit 或 TestNG。我不想发动圣战,但 IMO JUnit 更好、更广泛,因此开发得更积极。
所以,是的,Selenium + JUnit 是迄今为止测试 Web 应用程序的最佳组合。
附:还有像 JWebUnit 这样的 hybrid 解决方案,它只是将一些有用的assertXXX() 方法添加到 JUnit + HtmlUnit/Selenium 组合,但无论如何它仍然是 JUnit + Selenium :)
希望这会有所帮助...
【讨论】:
BDD 的最佳组合是 Selenium+Junit+JBehave
you can check here
【讨论】: