我用java的硒webdriver寫腳本。但是,點擊按鈕後,我們幾乎沒有被禁用的字段。我們需要找到這個領域正在獲取只讀模式或不。我使用isEnabled
和isDisplayed
,但它不起作用,系統顯示NoSuchElementFound
預期。有什麼辦法可以解決這個問題嗎?如何找到輸入字段是隻讀或不使用硒webdriver與java
1
A
回答
1
您可以執行以下步驟。 1.在執行檢查之前,使用WebDriverWait等待語句確保元素確實存在。 2.瀏覽HTML腳本並檢查導致HTML元素只讀的屬性。在我使用該屬性的應用程序中is'disabled'。當屬性'disabled'的值爲TRUE時,該元素被禁用。對你而言,它可能是一個不同的屬性。然後獲取這個屬性的值,你會發現元素是啓用還是禁用。 (driver.findElement(By.xpath(txt_Username))。getAttribute(「disabled」));
1
使用JavaScript,你可以得到這樣的屬性值 -
var isReadOnly = document.getElementById("field").readOnly;
alert(isReadOnly); //displays true OR false
請檢查瀏覽器的兼容性此屬性。 :-)
+0
感謝您的輸入,但它不適用於我的應用程序。 –
0
Below given code is working with my application.
public boolean runScript(String str){
String script ="if($("+'"'+"#City"+'"'+").attr("+'"'+str+'"'+")){return true}else{return false}";
System.out.println(script);
JavascriptExecutor js = (JavascriptExecutor) driver;
return (Boolean) js.executeScript(script);
}
int k=0;
do{
if(!runScript("HouseNo")){
System.out.println("Field is in readonly mode");
break;
}
Thread.sleep(1000);
}while(k<60);
2
你可以做到這一點,而無需執行JS,所有你需要做的是讓這是「只讀」可以做到這一點使用元素的DOM屬性:
WebElement readOnly = driver.findElementBy(locator);
Assert.assertTrue(readOnly.getAttribute("readOnly").equals("true"),"Element ReadOnly")
希望這會有所幫助....
相關問題
- 1. 如何找到TD元素存在或不 - 硒的webdriver用java
- 2. 如何獲取密碼輸入字段ID的gmail與硒Webdriver?
- 3. 清除字段並輸入硒webdriver
- 4. 在chrome中使用watir-webdriver - 找不到輸入字段?
- 5. 如何找到使用硒的webdriver C#
- 6. 如何測試「只讀」輸入字段
- 7. Java Selenium WebDriver找不到表單字段
- 8. 如何使用selenium webdriver java在Search Criteria字段中輸入值?
- 9. 使輸入字段只讀其他輸入字段
- 10. javascript與webdriverjs或與硒webdriver的Java?
- 11. 如何使用haml使輸入字段「只讀」?
- 12. 硒WebDriver找不到WebElements
- 13. 與JAVA的硒webdriver
- 14. 如何使用JavaScript只讀輸入字段?
- 15. 不能找到硒使用Java元素的webdriver
- 16. 使用Javascript將禁用的輸入字段轉換爲只讀輸入字段
- 17. 如何驗證鏈接是否啓用或不使用JAVA的硒webdriver?
- 18. 如何從使用硒的webdriver(JAVA)
- 19. 刪除使用硒的webdriver與Java
- 20. 我想讓我的輸入與硒webdriver
- 21. 禁用DatePicker如果輸入字段是隻讀
- 22. 使用硒webdriver找到標籤文本
- 23. 使用XPath找到硒HREF webdriver的
- 24. 使用硒webdriver無法找到元素
- 25. 硒找到輸入字段中的文字
- 26. 如何禁止使用Angular.js只輸入字符到輸入字段
- 27. Typescript接口只讀字段(找不到名稱'只讀')
- 28. 如何使日期輸入字段只讀在CakePHP
- 29. 如何在硒webdriver中找到xpath
- 30. 將數據輸入到不與硒一起工作的輸入字段中
在單擊按鈕之前和之後共享禁用字段的HTML代碼段。 – HemaSundar