gpt4 book ai didi

java - 如何在各个 JUnit 测试用例之间实现公共(public)数据共享

转载 作者:行者123 更新时间:2023-11-30 05:41:20 26 4
gpt4 key购买 nike

我有三个测试用例,即 Test1.javaTest2.javaTest3.java。在每个测试用例中,我都与一个要读取数据的文件进行交互。这意味着我正在读取每个测试用例的 @BeforeClass 中的文件数据,并在每个测试用例的 @AfterClass 中卸载相同的数据。

所以现在我的要求是,我想在执行这3个测试用例之前进行文件读取操作,并且在执行它们时相同的数据应该能够在这3个测试用例之间共享。

目前我已实现以下:

public class Test1{
private File testFile;
@BeforeClass
public static void setUpFiledata() {
// Code for reading the file data
}
@AfterClass
public static void tearDownFiledata() {
// Code for unloading the file data
}
}

public class Test2{
private File testFile;
@BeforeClass
public static void setUpFiledata() {
// Code for reading the file data
}
@AfterClass
public static void tearDownFiledata() {
// Code for unloading the file data
}
}

public class Test3{
private File testFile;
@BeforeClass
public static void setUpFiledata() {
// Code for reading the file data
}
@AfterClass
public static void tearDownFiledata() {
// Code for unloading the file data
}
}

在上面的代码中,每个测试用例都有一个 @BeforeClass@AfterClass 方法来初始化每个测试用例通用的文件。现在我需要一种可以在每个测试用例中共享文件内容的方法。

最佳答案

您可以使用测试套件来运行这些测试,并在测试套件上使用@BeforeClass@AfterClass:

@RunWith(Suite.class)
@Suite.SuiteClasses({Test1.class, Test2.class, Test3.class})
public class MySuite {
@BeforeClass
public static void setUpFiledata() {
// Code for reading the file data
}
@AfterClass
public static void tearDownFiledata() {
// Code for unloading the file data
}
}

关于java - 如何在各个 JUnit 测试用例之间实现公共(public)数据共享,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55571004/

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