【发布时间】:2013-11-22 07:29:38
【问题描述】:
我对 java 和 junit 很陌生。 我在 test/pagetests 下有一些测试用例,例如 addTest.java 、 deleteTest.java。 我使用下面的代码将这些测试包含在 junit 测试套件中
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
@RunWith(Suite.class)
@Suite.SuiteClasses({
addTest.class,
deleteTest.class
})
public class JunitTestSuite {
}
所有这些测试用例都使用来自 db 的输入。为此,我在 TestDBMethods.java 中编写了一个名为 getValues 的方法,该方法位于路径 test/testdb 中,它返回我在测试用例中需要的所有值。
我面临的问题是我不想在每个测试用例中调用 TestDBMethods.java 类,因为这非常昂贵。所以我更喜欢包含一个单例类,它只调用一次 TestDBMethods.java 并返回一个应该由所有其他测试用例使用的实例。 谁能帮我为调用TestDBMethods.java类并返回一个实例的单例类编写代码。
【问题讨论】:
-
看来需要使用setup方法:stackoverflow.com/questions/512184/…
-
但是,您的单元测试不应该查询数据库并获取测试值,因为单元测试应该快速运行。您不能将这些测试值嵌入到测试类本身中吗?
标签: java database class junit singleton