Java 使用Junit 5的参数化测试;用户名";及;密码";领域
我正在编写一个测试框架,我想在“用户名”和“密码”字段中添加使用JUnit5的参数化测试。请告诉我如何在我的示例中执行此操作 请告诉我如何替换不同的值而不是“awdawd@mail.ru及123456789Java 使用Junit 5的参数化测试;用户名";及;密码";领域,java,selenium-webdriver,junit5,Java,Selenium Webdriver,Junit5,我正在编写一个测试框架,我想在“用户名”和“密码”字段中添加使用JUnit5的参数化测试。请告诉我如何在我的示例中执行此操作 请告诉我如何替换不同的值而不是“awdawd@mail.ru及123456789 有几种方法可以提供不同的参数源,此方法显示用于向测试提供成对的用户+密码的CsvSource: public class TestWithParams { @ParameterizedTest @CsvSource({ "one@two.com,ab
有几种方法可以提供不同的参数源,此方法显示用于向测试提供成对的用户+密码的CsvSource:
public class TestWithParams
{
@ParameterizedTest
@CsvSource({
"one@two.com,abc123"
,"three@four.com,xyz789"
})
void testWithLogin(String user, String password) {
System.out.println("testWithLogin user="+user+" pass="+password);
}
}
运行时,它会打印:
testWithLogin user=one@two.com pass=abc123
testWithLogin user=three@four.com pass=xyz789
这比我想象的要容易
@ParameterizedTest
@CsvSource({"awdwds@@mail.ru, 1234",
"!smith@gmail.com, 987456",
"login.mail.com, 12345 ",
".,/,star@yandex.ru, 123456"})
public void clickLoginTest(String login, String pass) {
String acc = "Warning: No match for E-Mail Address and/or Password.";
mainPage
.goTo()
.clickLogin();
loginPage.logIntoAccount(login, pass);
String textWrongLogIn = loginPage.getTextWrongLogIn();
Assertions.assertEquals(acc, textWrongLogIn);
}
Junit文档中有什么不清楚的地方?另外,对于不同的帐户,您有不同的逻辑吗?否则,您需要更改参数吗?@OneCricketeer我无法将文档中的代码应用到我的案例中,只需展示一个示例,说明我可以如何操作,我想进行正测试、有效数据和负测试扫描请显示代码而不是图像?你自己有没有尝试过解决方案?我没有在您显示的内容中看到任何
@parameterzedtest
注释,也没有任何错误表明您尝试了失败(说您“不能”并不能说明您知道您不能)@OneCricketeer我没有编写参数化测试,因为我不知道如何编写它们,在哪里(在什么类中),因此,我要求您在我的案例中展示一个测试示例)