【发布时间】:2012-07-26 02:54:21
【问题描述】:
void insertAllRecords(){
insertRecord("tom", 100);
insertRecord("jake", 200);
insertRecord("tim", 300);
insertRecord("andy", 400);
insertRecord("mike", 500);
}
我正在写 JUnit 测试以测试具有测试数据库的东西。它从一个空数据库开始。
我想测试不同的东西,但我不想用相同的参数重复insertRecord。
有没有一种简单的方法来指定执行哪一行?比如我只想在@test函数之一中添加tom和andy。
我知道在每种测试方法中,数据库都从 0 开始。 我希望能够:
- 在 testA 中,使用 tom 和 jake 设置 db。
- 在 testB 中,使用 andy 设置 db 还有迈克。
- 在 testC 中,使用所有这些设置 db。
但我不想在每个测试中都放置单独的插入语句。我希望能够使用一些参数调用 insertAllRecords。
谢谢
【问题讨论】:
-
在集成测试中,您应该在测试完成后回滚数据库记录。这样,您就不必担心重复。
-
我可能每列都有几个数组,并有一个循环来添加我想要的数组。有更好的方法吗?
-
你为什么不模拟你的数据?类似mockito的东西......
标签: java database unit-testing testing junit