2014-12-05 416 views

回答

1

您還可以通過以下定位元素:

1 - 通過標籤名稱 2 - 通過CSS選擇

在適合你的情況CSS選擇器。請參閱下面的示例程序的文本框中通過CSS選擇器:

 FirefoxDriver driver = new FirefoxDriver(); 

    driver.get("https://www.google.co.in/?gfe_rd=cr&ei=42uBVO_NEKXM8gfL4oHIAQ&gws_rd=ssl"); 

    driver.findElement(By.cssSelector("#gbqfq")).sendKeys("test"); 
0

你的問題說,不使用「身份證」,「名」和「的Xpath」,並在回答你提到使用XPath進行查找輸入框標籤這可能會使訪問者對答案不滿。 不過來,我們可以使用網絡元素標識的其他技術如下:

通過類名
通過連結文字
偏鏈接文字
通過標籤名
通過CSS

另請參閱下面李這將幫助您更詳細地瞭解這些技術。

How to locate Element without xpath, id, name in selenium WebDriver

2

如果排序是靜態的,類名是你可以使用cssSelector與第n個孩子相同的()。

舉一個例子: 您有一個有序的列表。

WebElement we = findElement(By.cssSelector("li:nth-child(1)")); 

我可能會使用cssSelector並通過點擊或執行符合要求的元素上的動作取回元素使用每個循環,循環的列表。

0

詳細信息您可以找到這些文本框與CSSSelector。例如: : - ' List elements = wdriver.findElementsBycssSelector(「tagname [classname ='something']」);' ,然後遍歷列表以獲取特定的文本框。