2014-12-08 6 views
0

여기가 내 첫 번째 질문이며 Selenuim을 배우고 싶습니다. 텍스트가 페이지에서 사용 가능한지 확인하기 위해 스크립트에 어설 션을 추가하려고합니다. 코드는 첫 번째 어설 션에서만 작동하며 두 번째 코드에서는 실패합니다. 이것이 사용자 주장에 올바른 방법입니까? 감사!Selenium WebDriver - 어설 션을 사용하는 방법

public void verifyCampaignStatusDropdownMenu() throws InterruptedException { 

    driver.findElement(By.linkText("TextOne")); 
    String wipText = "TextOne"; 
    Assert.assertTrue("TextOne".equals(wipText), "TextOne text is available"); 

    driver.findElement(By.linkText("TextTwo")); 
    String tempText = "TextTwo"; 
    Assert.assertTrue("Template".equals(tempText), "TextTwo text is available"); 
} 
+0

와 같은 변수의 내용을 비교하고 있기 때문에 나에게 어떤 이해가되지 않는 주장 얻는 예외를 제공하십시오 – Saifur

+0

이 질문은 Selenium과는 아무런 관련이 없습니다. 몇 가지 JUnit 문서를 읽어야합니다. – SiKing

+0

@SiKing. 나는 그 질문이 셀레늄과 관련이 있다고 생각한다. 나는 OP의 요구 사항이'webelements'의 텍스트를 확인하는 것이라고 믿는다. – Saifur

답변

0

다중 어설 션은 모범 사례가 아닙니다. 가장 좋은 방법은 테스트 케이스 당 하나의 주장을하는 것입니다. 어떤 이유로 든 첫 번째 주장이 실패하면 두 번째 주장의 가치가 없습니다. this을 참조하십시오. 두 가지 다른 방법으로 그들을 분해하고 테스트를 실행해야합니다.

그리고, 당신이 부모가 아닌 webelement 과 방법을 사용하여 다음

public void verifyCampaignStatusDropdownMenuOne() throws InterruptedException { 

    String wipText = driver.findElement(By.linkText("TextOne")).getText() ; 
    Assert.assertTrue("TextOne text is available", "TextOne".equals(wipText)); 
} 

public void verifyCampaignStatusDropdownMenuTwo() throws InterruptedException { 

    String tempText = driver.findElement(By.linkText("TextTwo")).getText() ; 
    Assert.assertTrue("TextTwo text is available", "Template".equals(tempText)); 
} 

과 같아야합니다 자바

관련 문제