我有一个 Ant 任务,它运行我编写的一批测试用例,运行得很好...除了 Ant 似乎忽略了 fork="true"
<junit>
中的属性和<batchtest>
元素。
这是我的 Ant 任务:
<target name="run_tests" depends="init">
<java jar="${dir.testLib}${seleniumJar}" fork="true" spawn="true"/>
<junit fork="yes" haltonfailure="no" printsummary="no">
<classpath refid="test.classpath"/>
<batchtest todir="${test.reports}/acceptance/gui" fork="true">
<fileset dir="${dir.classes}">
<include name="**/*TestCase.class" />
<include name="**/*Test.class" />
<include name="**/Test*.class" />
<exclude name="**/AbstractSeleneseTestCase.class"/>
</fileset>
</batchtest>
<formatter type="xml" />
<classpath refid="test.classpath" />
</junit>
<junitreport todir="${test.reports}/acceptance/gui">
<fileset dir="${test.reports}/acceptance/gui">
<include name="TEST-*.xml" />
</fileset>
<report todir="${test.reports}/acceptance/gui" />
</junitreport>
</target>
一次运行一个测试用例需要 8 分钟以上,这实在是太长了。我注意到其他使用 Selenium 的侥幸,这只是使用该项目的另一个细微差别吗?
以下是正在发生的事情的概要:
1.运行Ant任务
2. Ant任务生成一个线程来运行Selenium服务器
3. 测试用例(Selenium 和 jUnit)一次运行一个
4. 当我的键盘被闪电击中时,乌云笼罩着我的立方体;-(
这是我想要发生的事情的概要:
1.运行Ant任务
2. Ant任务生成一个线程来运行Selenium服务器
3. 测试用例(Selenium 和 jUnit)同时启动
4. 到处都有奖金,并为大家击掌并拍拍后背!
最佳答案
在我看来,您没有运行 Selenium 网格,它允许您并行运行测试(与您在网格中注册的远程控制一样多的并发“线程”)。
关于java - 使用 ant 通过 Selenium 测试 fork jUnit 串行运行测试,而不是同时运行测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5121647/