2 回答
TA贡献1772条经验 获得超8个赞
您可以运行按包名或类名过滤的所有测试或特定测试。这是<batchtest>取自JUnit 任务手册的示例:
<junit printsummary="yes" haltonfailure="yes">
<classpath>
<pathelement location="${build.tests}"/>
<pathelement path="${java.class.path}"/>
</classpath>
<formatter type="plain"/>
<test name="my.test.TestCase" haltonfailure="no" outfile="result">
<formatter type="xml"/>
</test>
<batchtest fork="yes" todir="${reports.tests}">
<fileset dir="${src.tests}">
<include name="**/*Test*.java"/>
<exclude name="**/AllTests.java"/>
</fileset>
</batchtest>
</junit>
您可以根据需要调整<include name=""/>/<exclude name=""/>元素或添加更多包含/排除元素。<target/>然后,您可以为不同的测试创建不同的 ant <target name="all-tests"/>,例如<target name="package-foo-tests"/>等。
TA贡献1993条经验 获得超5个赞
我还不能添加评论,这就是我发布这个答案的原因。
我认为您需要的是一个测试套件类。
如下所示。
package com.emeter.test.predeploy.sdm.common;
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
import org.junit.runners.Suite.SuiteClasses;
import com.emeter.test.predeploy.sdm.svc.TestOutdatedComponentRpt;
import com.emeter.test.predeploy.sdm.svc.TestSubstationSvc;
import com.emeter.test.predeploy.sdm.svc.TestSvmComponentSvc;
import com.emeter.test.predeploy.sdm.svc.TestSvmNotificationSvc;
@RunWith(Suite.class)
@SuiteClasses({
TestSubstationSvc.class,
TestSvmComponentSvc.class,
TestSvmNotificationSvc.class,
TestOutdatedComponentRpt.class
}
)
public class TestSuite {
}
您可以从任何包中导入所需的类,然后一次运行它们。包含测试用例的类放在“SuiteClasses”注释下。
编辑:您只需像 eclipse 中的任何其他测试用例文件一样运行它。
添加回答
举报