gpt4 book ai didi

java - junit4 使用特定测试方法创建测试套件

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:30:14 25 4
gpt4 key购买 nike

在 junit4 中,我想执行来自不同类的特定测试方法,即想要使用来自不同类的特定测试方法创建一个测试套件。

假设我有 2 个类:

public class Test_Login {
@Test
public void test_Login_001(){
System.out.println("test_Login_001");
}

@Test
public void test_Login_002(){
System.out.println("test_Login_002");
}

@Test
public void test_Login_003(){
System.out.println("test_Login_003");
}
}


public class Logout {

@Test
public void test_Logout_001(){
System.out.println("test_Logout_001");
}

@Test
public void test_Logout_002(){
System.out.println("test_Logout_002");
}

@Test
public void test_Logout_003(){
System.out.println("test_Logout_003");
}
}

我只想从上面的类中执行测试方法 test_Login_001 、 test_Login_003 、 test_Logout_002 。

这在 junit4 中如何实现?

最佳答案

由于 JUnit 4.8 引入了类别,因此存在一个干净的解决方案,创建一个 TestSuite:

@RunWith(Categories.class)
@IncludeCategory(MustHaveTests.class)
@SuiteClasses( { Test_Login.class, Test_Logout.class })
public class MustHaveTestsTestSuite {
public interface MustHaveTests { /* category marker */ }

}

并在您希望使用 TestSuite 运行的每个测试上方添加 @Category(MustHaveTests.class),例如:

@Category(MustHaveTests.class)
@Test
public void test_Login_001(){
System.out.println("test_Login_001");
}

当运行 TestSuite 时,只会执行 MustHaveTests-“标记”的测试。有关@Category 的更多详细信息:https://github.com/junit-team/junit4/wiki/categories

关于java - junit4 使用特定测试方法创建测试套件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15240475/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com