簡體   English   中英

沒有驗證腳本的IE Selenium Webdriver運行太快

[英]IE selenium webdriver without validation script running too fast

我在IE11中面臨這個問題

我正在FF中執行我的腳本,並且運行正常

但是在IE中運行腳本時,它運行得太快,無法驗證用戶輸入的電子郵件ID是否正確

ac.VerifyEmailTextBoxIsEditable();

函數包括:var loginCredentials = new LoginModel(_driver); //登錄模型包含:data txtBox_email.Clear(); txtBox_email.SendKeys(loginCredentials._EmailAddressUnRegistered);

          ac.pwdChoice_no.Click();

          ac.btn_continue.Click();

在電子郵件驗證完成之前,它會執行腳本,因此盡管我輸入了正確的電子郵件,但仍顯示

“必須輸入錯誤登錄電子郵件ID字段”

而且,如果我手動執行,則效果很好。

如果要減慢測試腳本的執行速度,則需要配置隱式或顯式等待。 在Java中,您可以通過多種方式來做到這一點-既可以擴展事件偵聽器,也可以只擴展普通的ExpectedConditions。

http://docs.seleniumhq.org/docs/04_webdriver_advanced.jsp

我喜歡等待一個實際的元素可見,然后再與之交互。 換句話說,在發送密鑰之前,等待元素可見。

例如

new WebDriverWait(driver, 30)).until(ExpectedConditions.visibilityOf(txtBox_email));

之后,您可以發送密鑰,甚至獲取txtBox_email中設置的值...在調用txtBox_email.Click()之前(我假設是C#)。您甚至可以等到填充txtBox_email為止緊密的反饋回路= P。

最后,我建議您研究ExpectedConditions類/文件,以便最終構建自己的顯式等待(唯一的情況)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM