它如何使用id,class等類型來定位或標識元素。此外,BY是一個抽象類。如果可能,我們如何爲它創建對象?我們知道我們不能直接爲抽象創建對象,而不能由另一個類實現它。我想知道它背後的場景中,我們直接使用我們的腳本如何使用'By'機制來定位硒中的元素
公共抽象類通過 之前擴展java.lang.Object
我已經通過鏈接「https://selenium.googlecode.com/git/docs/api/java/org/openqa/selenium/By.html」
它如何使用id,class等類型來定位或標識元素。此外,BY是一個抽象類。如果可能,我們如何爲它創建對象?我們知道我們不能直接爲抽象創建對象,而不能由另一個類實現它。我想知道它背後的場景中,我們直接使用我們的腳本如何使用'By'機制來定位硒中的元素
公共抽象類通過 之前擴展java.lang.Object
我已經通過鏈接「https://selenium.googlecode.com/git/docs/api/java/org/openqa/selenium/By.html」
我走了也需要相同的功能,而不是創建使用下面的代碼實現的功能。基本上findElement
方法使用By來定位元素。
String xPath = "xpath=//*[@text='some text']";
//String xPath = "name='some text'";
//String xPath = "id=xxxx";
driver.findElement(getBy(xPath));
private By getBy(String locator) {
String[] parts = locator.split("=", 2);
By by = null;
switch (parts[0].trim()) {
case "xpath":
by = By.xpath(parts[1]);
break;
case "name":
by = By.name(parts[1]);
break;
case "link":
by = By.linkText(parts[1]);
break;
case "id":
by = By.id(parts[1]);
break;
case "css":
by = By.cssSelector(parts[1]);
break;
default:
throw new RuntimeException("invalid locator");
}
return by;
}
希望這會對你有幫助。
感謝您的回覆。這將有助於我更多地瞭解它。 –
@RameshUppuluri如果是,至少選擇一個正確答案。樂意效勞。 –
謝謝你的建議,是的,我同意你的看法,但就採訪而言,我們必須知道它的內在和外在。 :P –
你的答案是[這裏](http://stackoverflow.com/questions/17407203/can-we-use-static-method-in-an-abstract-class)。你需要了解抽象類的概念。 –