0
我有一些jQuery驗證代碼,必須通過一些Selenium測試。但是,每次運行測試時,不同的測試都會失敗,並且不同的測試通過。例如,在一次測試中,縮短密碼將失敗並且密碼過長。但是,如果我重新運行測試,則可能會發生相反的情況!jQuery /正則表達式失敗硒IDE測試
這是正則表達式:
var password = /^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*(_|[[email protected]#$%^&*.,?])).{6,20}$/;
這是jQuery的:
if($('#password').val() ==""){
$('#passwordErrorMsg').text("Your password must be between 6 and 20 characters. It must contain a mixture of upper and lower case letters, and at least one number or symbol.");
}
else if(password.test($('#password').val())){
$('#passwordErrorMsg').text("OK");
}
else($('#passwordErrorMsg').text("Your password must be between 6 and 20 characters. It must contain a mixture of upper and lower case letters, and at least one number or symbol."));
});
在經過Selenium測試將是有益的和感激,感謝任何幫助。
@roasted,我認爲正則表達式是正常的......它只是用向前檢查每個必要的符號,然後測試字符串長度。 @ user1766599。你可以從你的第四個前瞻中刪除'_ |'。它應該由角色類來照顧。 (雖然這不會解決你的問題)。此外,你最lasst的錯誤信息不適合正則表達式。你的正則表達式需要一個數字**和**符號。 –
好的,我沒看過「它必須包含大寫和小寫字母的混合體,並且至少包含一個數字或符號。」 ... –