2017-09-21 82 views
0

我有一個元素1與文本,我點擊這個元素1,它帶我到一個不同的頁面,我點擊另一個元素2,並帶我回到元素1。但element1應該與element2具有相同的文本,因爲它在單擊element2時得到更新。你將如何在Appium中驗證它?如何驗證兩個元素在Appium中具有相同的值?

我很困惑,如何驗證,如果element2的是不同的頁面

 String txt1=element1.getText("same"); 
     String txt2=element2.getText("same"); 

     if(txt1.equals(txt2)) 
     { 
     System.out.println("Success"); 
     } 
     else 
     { 
     System.out.println("Failure"); 
     } 
+0

getText()不帶任何參數。 – Murthi

+0

getAttributes()。我很困惑,如果一個人在不同的頁面上,你將如何驗證兩個元素是否具有相同的值文本。 – alexhacki

回答

0

你可以檢查通過獲取元素的值之前驗證標題:

//current first page 
    String firstPageTitle = driver.getTitle(); 
    String txt1=element1.getText(); 
    element1.click(); 

    //current page Second 
    String secondPageTitle = driver.getTitle(); 

    if(!secondPageTitle.equals(firstPageTitle)){ 
    String txt2=element2.getText(); 
    } 
    //verify if element texts are equal 
    if(txt1.equals(txt2)) 
    { 
    System.out.println("Success"); 
    } 
    else 
    { 
    System.out.println("Failure"); 
    } 
+0

它可以給我們相同的結果,因爲我們匹配他們的文本 – iamsankalp89

0

你可以試試這個它會比較你的兩個期望值。

assertEquals(txt1,txt2,"txt1 And txt2 is not same"); 
0

嘗試亞馬遜的網站,網頁是不同的充但gettext的價值的這個例子是相同

WebDriver driver=new FirefoxDriver(); 
driver.get("https://www.amazon.in"); 
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); 
String titleFirstPage=driver.getTitle(); 
WebElement element1=driver.findElement(By.xpath(".//*[@id='nav- 
logo']/a[1]/span[1]")); 
String element1Text=element1.getText(); 

driver.findElement(By.xpath(".//*[@id='tile-top']/div[2]/a/span")).click(); 
String titleSecondPage=driver.getTitle(); 
WebElement element2=driver.findElement(By.xpath(".//*[@id='nav-logo']/a[1]/span[1]")); 
String element2Text=element2.getText(); 

if (!titleFirstPage.equals(titleSecondPage)) { 
    System.out.println("Differnt page"); 
    if(element1Text.equals(element2Text)) 
    { 
     System.out.println("Amazon title is same"); 
    } 
    else 
    { 
     System.out.println("not matched"); 
    } 

} 
else 
{ 
    System.out.println("Smoething is not correct"); 
} 
+0

是你的問題解決了嗎? – iamsankalp89

+0

這是不同的元素,但必須有相同的文字。 – alexhacki

0

捕捉你想與下面的語法來比較每個元素的文本。

String text1=element1.getText(); 

現在,您可以使用if語句或在兩個文本相等的情況下斷言。

+0

和2107最高QA獎去.. – kushal

+0

這是非常友善的你! – bsk

相關問題