2015-03-06 1 views
0

Мой код выглядит так (в Java), работает на хроме:такого элемента Исключение при попытке driver.findElement (К

@Test 
    public void verifyRedAlertCountDisplayed() throws Exception {    
     driver.findElement(By.cssSelector(this.RED_ALERTS_BTN)); 
} 

Я объявил RED_ALERTS_BTN:

public final String RED_ALERTS_BTN = "#divAOISummary > div > div.list-summary.list-summary-red.active"; 

Я также попытался идти просто с помощью ID:

@Test 
    public void verifyRedAlertCountDisplayed() throws Exception {    
     driver.findElement(By.id(this.RED_ALERTS_BTN)); 
} 

public final String RED_ALERTS_BTN = "divAOISummary"; 

кажется, как попробовал все (даже с помощью XPath) и я до сих пор получаю «нет такого элемента ';

фактический HTML:

<div id="pnlRightDB-targetEl" style="position: absolute; width: 320px; left: 0px; top: 0px; height: 1px;"><div class="x-panel x-box-item x-panel-default" id="pnlAOIHeader" style="left: 0px; margin: 0px; width: 320px; top: 0px; height: 215px;"><div id="pnlAOIHeader-body" class="x-panel-body x-panel-body-default x-panel-body-default" style="width: 320px; left: 0px; top: 0px; height: 215px;"><div id="pnlAOIHeader-clearEl" class="x-clear" role="presentation"></div><div id="pnlAOIHeader_Content" class=""> 
           <div id="divAOIHeader" class="clearfix" style="height: 213px;"> 
     <div class="panel-title">Incidents<span class="icon-refresh" title="Refresh the Incident List" onclick="refreshIncidentList()"></span></div> 
     <div id="divAOISummary" class="IncidentSummary"><div class="list-summary-holder"> 
       <div class="list-summary list-summary-red active" title="1 Red Alert">1</div> 
       <div class="list-summary list-summary-yellow" title="No Yellow Alerts">0</div> 
       <div class="list-summary list-summary-green" title="No Green Alerts">0</div> 
     </div>  
</div> 

кто-нибудь может помочь или дать мне идею? Похоже, что все остальные тестовые примеры выполняются просто отлично, используя аналогичную технику;
большое спасибо за любое предложение! aluchia

ответ

1

Я бы попробовал explicit подождать и дождаться элемента, пока он не находится.

@Test 
public void verifyRedAlertCountDisplayed() throws Exception {    
     By byCss = By.cssSelector("byCss"); 

     WebElement myDynamicElement = (new WebDriverWait(driver, 10)).until(ExpectedConditions.presenceOfElementLocated(byCss)); 

} 
+0

спасибо, но я не вижу свою кнопку в вашем коде, хо она найдет ее? – Lulu

+0

@Aluchia change 'By byCss = By.cssSelector (« byCss »);' и заменить byCss на cssSelector, который вы хотите – Saifur

+0

спасибо, к сожалению, это не помогло мне как-то – Lulu

 Смежные вопросы

  • Нет связанных вопросов^_^