2017-07-06 97 views
0

我是新來硒選擇下拉菜單中的文字和我被困在一個實施 我的要求是如何搜索和使用硒的webdriver

  1. 進入設置頁面
  2. 查找下拉
  3. 從下拉列表中獲取的所有值
  4. 尋找在下拉
  5. 一定的文字如果沒有選擇文本,選擇下拉
  6. 特定文本

我的代碼如下

void setru() 
    { 
     driver.switchTo().frame("contentFrame"); 
     Select rudropdown=new Select(driver.findElement(By.id("DefaultOrganisationDropDown"))); 
     List<WebElement> drop=rudropdown.getOptions(); 
     int e=drop.size(); 
     for(int i=0;i<e;i++) 
     { 
      String temp=drop.get(i).getText(); 
      String actual_RU="000139, NEXTRAN CORPORATION - JACKSONVILLE"; 
      boolean flag=false; 
      if(temp.contains("000139")) 
      { 
       flag=true; 
       rudropdown.selectByValue("actual_RU"); 

      } 

     } 

但是,這是給我的錯誤信息。 org.openqa.selenium.NoSuchElementException:不能與價值定位選項:actual_RU

+0

你傳遞字串' 「actual_RU」'。你確定你不想傳遞名爲'actual_RU'的變量的值嗎? – jsheeran

+0

我已經給出code.Its仍然無法正常工作。 我想選擇值x如果它不存在。 driver.switchTo()。frame(「contentFrame」); \t \t \t Select rudropdown = new Select(driver.findElement(By.id(「DefaultOrganisationDropDown」))); \t \t \t列表 drop = rudropdown.getOptions(); \t \t \t int e = drop.size(); \t \t \t對(INT I = 0;我

+0

不要用'比較字符串=='。改用'Expected_RU.equals(Actual_RU)'。另外,按照慣例,非最終變量名稱以小寫字母開頭並且不包含下劃線。 – jsheeran

回答

0

它可能如果你

rudropdown.selectByValue("actual_RU"); 

rudropdown.selectByValue(temp); 
0

似乎有取代下面一行代碼中的作品是一個錯字錯誤。使用下面的代碼

rudropdown.selectByValue(actual_RU); 

而不是

rudropdown.selectByValue("actual_RU");