ログイン ページには、3 つの有効なシナリオがあります -
1) 有効なログイン
2) 無効なログイン
3) 否定的なテスト シナリオ
システムは、ユーザーにエラー メッセージを表示する必要があります。
しかし、ネガティブなテスト シナリオは、アプリケーションを破壊しようとしている場合です。
たとえば、
1) パスワードを空白のままにする、
2) URL を使用してナビゲートしようとする、
3) ログイン ページをバイパスして IE の進むボタンを使用するなど...
ログイン ページには、3 つの有効なシナリオがあります -
1) 有効なログイン
2) 無効なログイン
3) 否定的なテスト シナリオ
システムは、ユーザーにエラー メッセージを表示する必要があります。
しかし、ネガティブなテスト シナリオは、アプリケーションを破壊しようとしている場合です。
たとえば、
1) パスワードを空白のままにする、
2) URL を使用してナビゲートしようとする、
3) ログイン ページをバイパスして IE の進むボタンを使用するなど...
セレン入門[Java] フレームワークを使用すると、テストは次のようになります。
@Config(url="http://systemunder.test", browser=Browser.FIREFOX)
public class TestLogin extends AutomationTest {
@Test
public void testLoginWorks() {
setText(By.id("username"), "valid_username")
.setText(By.id("password"), "valid_password")
.click(By.id("btnLogin"))
.validatePresent(By.id("logout_link"));
}
@Test
public void testPasswordBlank() {
setText(By.id("username"), "invalid_username")
.setText(By.id("password"), "")
.validateText(By.id("error_message"), "Password is blank.");
}
@Test
public void testUrl() {
navigateTo("/profile")
.validateUrl("/login"); // make sure they get redirected to login page.
}
}