在“username”和“password”字段中使用JUnit5的java参数化测试

uyhoqukh  于 2021-07-06  发布在  Java
关注(0)|答案(2)|浏览(325)

我正在编写一个测试框架,我想在“username”和“password”字段中添加使用junit5的参数化测试。告诉我如何在我的示例中执行此操作请告诉我如何替换不同的值而不是“awdawd@mail.ru和“123456789”

kgqe7b3p

kgqe7b3p1#

有几种方法可以提供不同的参数源,此方法显示了用于向测试提供成对的用户+密码的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
8aqjt8rx

8aqjt8rx2#


比我想象的要容易

@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);
}

相关问题