Selenium 如何为下面的代码找到文本区域的xpath?

Selenium 如何为下面的代码找到文本区域的xpath?,selenium,xpath,selenium-webdriver,Selenium,Xpath,Selenium Webdriver,*//这里,我首先登录,然后创建新的集合,然后尝试添加问题以填充空白问题类型。 public class New_Question { public static void main(String[] args) { WebDriver driver = new FirefoxDriver(); driver.get("http://www.goorulearning.org"); driver.manage().timeouts().implicitlyWait(3

*//这里,我首先登录,然后创建新的集合,然后尝试添加问题以填充空白问题类型。

public class New_Question {
  public static void main(String[] args) {
    WebDriver driver = new FirefoxDriver();
    driver.get("http://www.goorulearning.org");
    driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
    //Login into the application with username and password
    driver.findElement(By.id("lblLogin")).click();
    driver.findElement(By.id("tbLoginUsername")).sendKeys("khush");
    driver.findElement(By.id("tbLoginPassword")).sendKeys("gooru12");
    driver.findElement(By.id("btnLogin")).click();
    Thread.sleep(5000L);
    //Clicking on My Collection by hover on the tab- Create collection.
    Actions act = new Actions(driver);
    WebElement Myclass =driver.findElement(By.id("LinkheaderElement2"));
    act.moveToElement(Myclass).build().perform();
    driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
    driver.findElement(By.id("lblLblCreateCollection")).click();
    Thread.sleep(10000L);
   // Creating Collection by name "My First Collection"
    driver.findElement(By.xpath("//input[contains(@id,'txtCollectionTitle')]"))
    .sendKeys("My First Collection");
    driver.findElement(By.id("btnOk")).click();
   // using implicit wait 
    driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
    // Clicking on New Question button
    driver.findElement(By.id("btnNewQuestion")).click();
    driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
    driver.findElement(By.xpath("//a[contains(., 'Fill in the Blank')]")).click();
    // please find the xpath for Question text area. In html only class tag is given, please let me know how to find xpath for this kind of element having only class in html.
    driver.findElement(By.className("org-ednovo-gooru-client-mvp-shelf-collection-tab-resource-add-AddQuestionResourceView_AddQuestionResourceViewUiBinderImpl_GenCss_addWebResourceStyle-addResourceFormInputControl questionTextcontainer")).sendKeys("My first question---> 1+1 = ?");

}*

一个有用的插件是firebug插件,使用该插件,您可以检查您的网站并复制一个有效的xpath。我也使用这个插件。但是如果您想拥有更稳定的xpath,就必须构建xpath结构。您应该使用此元素唯一的结构。可能是多个属性的组合。

文本位于
框架内
,您需要切换到该框架并向相应的元素发送键,请参见。右键单击,检查元素,右键单击并复制Xpath?我尝试了driver.switchTo().frame(driver.findelelement(By.id(“gwt-uid-977_ifr”);切换到帧后,我也无法点击空白标签中的填充。我可以点击填充在空白标签,而不切换到框架。那个么,为什么我们不能在不切换的情况下在文本区域中添加文本呢?右键单击,检查元素,右键单击并复制Xpath,这个Xpath不起作用。