WatiN を使用してテストを作成しました。F10 を使用してコードをステップ実行すると、テストは成功しますが、コンテキスト メニューから [テストの実行] コマンドを実行すると、テストが失敗します。
これが私のテストです:
[TestMethod]
[STAThread]
public void Should_show_captcha_after_three_invalid_login_attempts_with_invalid_username()
{
// Given
int numberOfLoginAttempts = 3;
// When
for (int loginAttempt = 1; loginAttempt <= numberOfLoginAttempts; loginAttempt++)
{
EnterUsername(LoginSettings.ValidUserName);
EnterPassword(loginAttempt.ToString());
ClickLoginButton();
// Check we are still on the loginpage
Assert.IsTrue(_browser.Title.Contains("Inloggen"));
}
bool isCaptchaVisible = _browser.Page<LoginPage>().Captcha.Exists;
// Then
Assert.IsTrue(isCaptchaVisible);
// Make sure to clear the login attempts for next test cases
RemoveLoginAttempts();
}
参考までに: DB では、ユーザー名に基づいて loginAttempts を追跡します。ログイン試行回数が 2 回を超えると、キャプチャが表示されます。私が遭遇した問題は、DB のカウンターが 1 のままであることです。手動でテストを実行すると、カウンターが増加します。
これはどのように可能ですか?