Java 是否含硒+;JUnit是目前业界测试web应用程序的最佳实践吗?

Java 是否含硒+;JUnit是目前业界测试web应用程序的最佳实践吗?,java,testing,selenium,junit,Java,Testing,Selenium,Junit,我是测试领域的新手。我知道Selenium是显示自动web测试的最佳开源工具。但是Selenium需要另一个工具来驱动它的测试脚本。我真正想知道的是,将Selenium与JUnit结合起来是否是目前业界测试web应用程序的最佳实践。如果没有,在行业中显示硒测试的最佳实践是什么?BDD良好的组合是硒+Junit+JBehave BDD的最佳组合是硒+朱尼特+JBehave 如果说web浏览器“模拟器”,那么到目前为止基本上有两个最流行和最发达的引擎:HtmlUnit和Selenium及其驱动程序

我是测试领域的新手。我知道Selenium是显示自动web测试的最佳开源工具。但是Selenium需要另一个工具来驱动它的测试脚本。我真正想知道的是,将Selenium与JUnit结合起来是否是目前业界测试web应用程序的最佳实践。如果没有,在行业中显示硒测试的最佳实践是什么?

BDD良好的组合是硒+Junit+JBehave

BDD的最佳组合是硒+朱尼特+JBehave

如果说web浏览器“模拟器”,那么到目前为止基本上有两个最流行和最发达的引擎:HtmlUnitSelenium及其驱动程序

Selenium实际上启动指定的浏览器并直接向其发送命令,这意味着模拟的质量非常接近真实的浏览器

HtmlUnit只是尝试模拟不同的浏览器功能,而没有实际启动它们,这意味着模拟的质量要差得多

根据我的经验,Selenium使用ChromeDriver能够成功加载heavy JS页面并对其执行操作,而HtmlUnit即使在使用不同配置选项对其进行数小时的调优后仍然失败

除此之外,我认为Selenium是迄今为止最好的模拟引擎

现在,关于测试框架:有JUnitTestNG。我不想发动圣战,但IMOJUnit更好、更广泛,因此,它得到了更积极的发展

因此,是的,Selenium+JUnit是迄今为止测试web应用程序的最佳组合

另外,还有像JWebUnit这样的hybrid解决方案,它只是简单地将一些有用的
assertXXX()
方法添加到JUnit+HtmlUnit/Selenium组合中,但无论如何它仍然是JUnit+Selenium:)


希望这能有所帮助……

如果谈论web浏览器“模拟器”,那么目前基本上有两个最流行和最发达的引擎:HtmlUnitSelenium及其驱动程序

Selenium实际上启动指定的浏览器并直接向其发送命令,这意味着模拟的质量非常接近真实的浏览器

HtmlUnit只是尝试模拟不同的浏览器功能,而没有实际启动它们,这意味着模拟的质量要差得多

根据我的经验,Selenium使用ChromeDriver能够成功加载heavy JS页面并对其执行操作,而HtmlUnit即使在使用不同配置选项对其进行数小时的调优后仍然失败

除此之外,我认为Selenium是迄今为止最好的模拟引擎

现在,关于测试框架:有JUnitTestNG。我不想发动圣战,但IMOJUnit更好、更广泛,因此,它得到了更积极的发展

因此,是的,Selenium+JUnit是迄今为止测试web应用程序的最佳组合

另外,还有像JWebUnit这样的hybrid解决方案,它只是简单地将一些有用的
assertXXX()
方法添加到JUnit+HtmlUnit/Selenium组合中,但无论如何它仍然是JUnit+Selenium:)


希望这有助于……

谢谢您的回答。你能解释一下JUnit和TestNG之间的区别吗。哪个更好?这些天我学习了机器人的框架。Robot框架呢?关于JUnit 4和TestNG:JUnit是规范的测试框架,因为它早在2000年就存在了,也就是说,早在TestNG之前。TestNG于2004年发布,解决了当时JUnit中缺少的一些问题。但现在,除了一些细微的差异外,它们几乎是一样的,所以我想说,JUnit更为广泛,这是一个口味和事实的问题。我从未使用过Robot Framework,但从我刚刚读到的内容来看,对于web测试,它似乎在幕后使用Selenium,因此,归根结底,它受到Robot框架接口的限制(从我所看到的情况来看,与普通Java相比,它相当有限),感谢您的回答。你能解释一下JUnit和TestNG之间的区别吗。哪个更好?这些天我学习了机器人的框架。Robot框架呢?关于JUnit 4和TestNG:JUnit是规范的测试框架,因为它早在2000年就存在了,也就是说,早在TestNG之前。TestNG于2004年发布,解决了当时JUnit中缺少的一些问题。但现在,除了一些细微的差异外,它们几乎是一样的,所以我想说,JUnit更为广泛,这是一个口味和事实的问题。我从未使用过Robot Framework,但从我刚刚读到的内容来看,对于web测试,它似乎在幕后使用Selenium,因此,归根结底,它受到Robot框架接口的限制(从我所看到的情况来看,与普通Java相比,它相当有限)