2014-01-22 3 views
0

2 가지 시나리오에서 화면에 2 가지 유형의 경고를주는 경우가 있습니다. 경고문에 텍스트를 표시하고 경고문을 닫아야합니다.텍스트가 어설 션되는지 여부를 알아내는 방법

나는 다음과 같은 사용했다 :

Alert javascriptAlert= driver.switchTo().alert(); 
String text= javascriptAlert.getText(); 
assertTrue(text.matches("Saved Successfully.")); 
javascriptAlert.accept(); 

이 사용 나는 경고를 받아 들일 수 있어요. 그러나 다른 경고가 표시 되더라도 경고는 닫히고 경고가 주어진 텍스트와 일치하는지 여부는 표시되지 않습니다.

그래서 텍스트가 일치하는지 아닌지 어떻게 알 수 있습니까?

답변

0

일치하는 경우 부울을 true로 설정할 수 있으며 이에 따라 용도에 맞게 사용할 수 있습니다. 아래 샘플 방법 :

public boolean matchAlertTextAndClose(String textToMatch){ 
    Alert javascriptAlert= driver.switchTo().alert(); 
    String text= javascriptAlert.getText(); 
    boolean doesTextMatch = false; 
    if(text.matches(textToMatch)){ 
     doesTextMatch = true; 
    } 
    else{ 
     doesTextMatch = false; 
    } 
    javascriptAlert.accept(); 
    return doesTextMatch; 
} 
+0

부울이없는 조건을 사용하고 일치하는지 여부를 테스트 할 경우 – Dinu

+0

예, 가능합니다. 여기서 부울 변수는 매칭 후에 설정되므로 매칭을 기반으로하는 실행이 더 이상 없다면 불필요한 변수는 필요하지 않습니다. 이 경우 무언가를 인쇄하거나 원하는대로 작업 할 수 있습니다 (부울을 설정하는 대신 블록 내부). 행동은 완전히 일치 한 후에 무엇을하고 싶은지에 달려 있습니다. – Husam

+0

및 유용하다고 판단되면 답변을 수락하십시오. – Husam

관련 문제