作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有以下测试来将用户添加到列表中:
@Test
public void testTheSizeOfUserListAfterAddingThreeUsers() {
User james = new User(001, "JamesBond", "JB007", "Admin");
User billy = new User(002, "BillyBob", "WOOHOONASCAR", null);
User jane = new User(003, "CaliGurl88", "surfboardz", null);
manager.addUser(james);
manager.addUser(billy);
manager.addUser(jane);
assertEquals(3, manager.getSize());
manager.removeUser(james);
manager.removeUser(billy);
manager.removeUser(jane);
}
但是,我必须在每次测试后删除每个用户,以便重新开始下一次测试。
我是否可以使用 @After
注释删除为每个测试创建的所有用户?也许使用 for 循环?
最佳答案
一项测试不得对另一项产生任何影响。最安全的解决方案是在每次测试时重新创建 manager
对象 @Before
。
public class MyTest{
private Manager manager;
@Before
public void setUp(){
manager = new Manager();
}
...
}
但如果您真的需要在所有测试中使用相同的实例,请确保您创建了一个非常好的清理方法 (@After
)。
关于java - @After each test, 删除所有用户 - JUnit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16963099/
我是一名优秀的程序员,十分优秀!