java - 将配置解析为 Junit5 测试
问题描述
我的测试需要从文件中提取数据。我想将文件的位置与其他一些参数一起传递给 Junit 测试。
这可以通过命令行参数来完成吗?如果没有,推荐的方法是什么?创建配置文件或环境变量?
解决方案
不建议使用 junit 从配置中读取变量并将它们用于测试,因为这样测试不再基于代码,而是部分基于您的配置。
您应该对变量进行硬编码。我的一个项目中的一个例子:
@Test
public void testIfEmailValidatorReturnsCorrectValue() {
Validators validator = Validators.getInstance();
Assert.assertFalse(validator.isMail(""));
Assert.assertFalse(validator.isMail("test"));
Assert.assertFalse(validator.isMail("test@mail"));
Assert.assertFalse(validator.isMail("test@mail:de"));
Assert.assertFalse(validator.isMail("test@test@mail.de"));
Assert.assertFalse(validator.isMail("testmail.de"));
Assert.assertFalse(validator.isMail("test@mail.d$e"));
Assert.assertTrue(validator.isMail("test@mail.de"));
Assert.assertTrue(validator.isMail("testASD01@Ma1l.com"));
Assert.assertTrue(validator.isMail("testASD01@sub.Ma1l.com"));
}