我有一个自动连线变量
@Autowired
private DocumentConfig documentConfig;
我想使用此配置对象的各种状态对文档服务进行测试。我有哪些选择?什么是最好的选择?
第一个想法是这样的:
@Test
public void save_failure() {
documentConfig.setNameRequired(true);
/*
testing code goes here
*/
documentConfig.setNameRequired(false);
}
但我想更确定变量在测试后重置,以免干扰其他测试,以确保只有此测试在出现问题时出错。
我的新想法是这样的:
@Before
public void after() { documentConfig.setNameRequired(true); }
@Test
public void save_failure() {
/*
testing code goes here
*/
}
@After
public void after() { documentConfig.setNameRequired(false); }
但是,这根本不起作用,因为“之前”和“之后”对整个文件执行,而不是对单个测试执行。我宁愿不仅仅为了一个测试而制作一个新文件。
我现在已经达成了妥协:
@Test
public void save_failure() {
documentConfig.setNameRequired(true);
/*
testing code goes here
*/
}
@After
public void after() { documentConfig.setNameRequired(false); }
它似乎做了我想做的一切,但我有几个问题。
假设开始时为假,这是否保证不会干扰其他测试?
有什么办法可以更清楚地说明这一点吗?无论是为了我未来的自己,也是为了他人。nameRequired
森栏
长风秋雁
Cats萌萌
哈士奇WWW
随时随地看视频慕课网APP
相关分类