2014-09-04 53 views
0
public boolean checkRemoveButtonAvailability() { 
    List<WebElement> buttonsOnPage = findAll(BUTTONS); 
    for (WebElement button : buttonsOnPage) { 
     String buttonText = button.getText(); 
     if (buttonText.equals("Remove")) { 
      return true; 
     } 
     else { 
      return false; 
     } 
    } 
    return true; 
} 

@Test 
public void removeButtonHasBeenCleared() { 
....... 
assertFalse(userSearchPage.checkRemoveButtonAvailability()); 
    } 

我用上面的方法checkRemoveButtonAvailability()在我的測試,測試的結果總是被傳遞,雖然在測試過程中我是否刪除按鈕是否可用。爪哇 - 硒 - 布爾方法始終返回false

此外,如果我刪除最後一個返回類型return true,IDE告訴我必須添加返回類型。

有什麼建議嗎?

謝謝

回答

2

你的說法是不正確:

else { 
    return false; 
} 

如果這是檢查你第一個按鈕不包含所需的文本,該方法返回false,並且循環結束。

刪除此else聲明,你很好。

最終return必須是false

+3

僅僅刪除'else'語句還不夠,還應該在for循環後將返回值更改爲false。否則,此方法將始終返回true。 – 2014-09-04 08:43:29

+0

+1。這確實是對的。我認爲這已經是錯誤的了,它應該是默認的。 – PKlumpp 2014-09-04 08:44:59

+0

我刪除了else語句,並將最後的返回值設置爲false。也是相反的(首先假然後是真的)。無論按鈕是否可用,都會通過測試。 – 2014-09-04 08:51:53