簡體   English   中英

失敗的測試在 testng 輸出中顯示為通過

[英]Failed tests are showing as pass in testng output

我有兩個不同的 testng 測試 1. 登錄 2. 日期選擇器。 我在這里做什么,在日期選擇器中我給出了過去的日期,所以我收到一條警告消息“日期不能過去。在 testng 輸出中,我收到了警告消息,但為什么我的結果顯示為 passike 1.Book travel-passed 2. Date picker-passed

請重新構建此代碼。我有兩個不同的 testng 測試 1. 登錄 2. 日期選擇器。 我在這里做什么,在日期選擇器中我給出了過去的日期,所以我收到一條警告消息“日期不能過去。在 testng 輸出中,我收到了警告消息,但為什么我的結果顯示為 passike 1.Book travel-passed 2. Date picker-passed

import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;

public class travelapp {
    WebDriver driver;

    @BeforeClass
    public void setUp() {
        System.setProperty("webdriver.chrome.driver","D://Siva//Selenium//chromedriver//chromedriver.exe");
        driver = new ChromeDriver();        
    }

    @Test
    public void Logintravel() {
        driver.get("https://testsite.com");
        driver.findElement(By.xpath(".//*[@id='txtEmployeeId']")).sendKeys("abcd");    driver.findElement(By.xpath(".//*[@id='btnSubmit']")).click();
        driver.manage().timeouts().pageLoadTimeout(40, TimeUnit.SECONDS);
        driver.manage().timeouts().pageLoadTimeout(40, TimeUnit.SECONDS);
        driver.findElement(By.xpath(".//[@id='ctl00_mnuTraveln0']/table/tbody/tr/td/a")).click();
        WebElement radioBtn = driver.findElement(By.xpath(".//*[@id='ctl00_cphMain_TravelRequest1_chkCostCenter']"));
        radioBtn.click();
        driver.manage().timeouts().pageLoadTimeout(40, TimeUnit.SECONDS);      
   }

   @Test(priority=1)
   public void Datepicker() {                     
       //Travel from date
       driver.findElement(By.xpath(".//[@id='ctl00_cphMain_TravelRequest1_txtTrStartDate']")).click();
       driver.findElement(By.xpath(".//[@id='ctl00_cphMain_TravelRequest1_txtTrStartDate_CalendarExtender_day_0_1']")).click();
       Alert alert = driver.switchTo().alert();
       String alertMessage = driver.switchTo().alert().getText();
       System.out.println(alertMessage);
  }
 }                                                                                           

請重新構建此代碼.. 我有兩個不同的 testng 測試 1. 登錄 2. 日期選擇器。 我在這里做什么,在日期選擇器中我給出了過去的日期,所以我收到一條警告消息“日期不能過去。在 testng 輸出中,我收到了警告消息,但為什么我的結果顯示為 passike 1.Book travel-passed 2. 日期選擇器-通過。我希望日期選擇器在 testng 輸出中顯示為失敗。有人請重新編寫此代碼。我是 testng 的新手。

TestNG 不關心警報的內容是什么,如果沒有任何異常,測試就會通過。

您需要使用其他顯示成功的消息來斷言它。 例如

String alertMessage = driver.switchTo().alert().getText();
Assert.assertEquals(alertMessage, "Data passed successfully"); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM