gpt4 book ai didi

java - 使用 Java 将测试结果传递给 Selenium 中的 ITestResult

转载 作者:太空宇宙 更新时间:2023-11-04 11:16:30 24 4
gpt4 key购买 nike

我需要将结果值传递给我拥有的 check 方法。

@Test
public void test1()
{
test = extent.createTest("Test Case 4 : Checking displayed date against current date",
"Checking if the date displayed on the check in and check out box is equal to the current date");

String checkin = driver.findElement(By.id("from")).getAttribute("value");
test.info(checkin);

String timeStamp = new SimpleDateFormat("yyyy-MM-dd").format(new Date());

if (checkin.equals(timeStamp))
{
test.info("The checkin in date " + checkin + " is equal to the current date " + timeStamp);
} else
{
test.info("The checkin in date " + checkin + " does not equal the current date " + timeStamp);
}

}

@AfterMethod
public void check(ITestResult result) throws IOException
{
if (result.getStatus() == ITestResult.FAILURE)
{
String screenshotPath = GetScreenshot.capture(driver);
test.fail("Test Case Failed");
test.info(result.getThrowable());
test.info("Screenshot Below : " + test.addScreenCaptureFromPath(screenshotPath));

} else if (result.getStatus() == ITestResult.SKIP)
{
test.skip("Test Case Has Been Skipped");
} else
{
test.pass("Test Case Passed");
}
}

所以我想要完成的是,如果 checkin 等于 timeStamp 那么测试应该通过,如果 checkin 不等于 timeStamp 测试应该失败。对于我当前的代码,这两种情况下的测试都通过了。

我是否可以将 test.fail() 或其他内容传递给 check 方法。

我尝试了 check(ITestResult.FAILURE); 但没有成功。

我还尝试了 check((ITestResult) test.fail("Test has Failed")); ,它抛出了 ClassCastException

最佳答案

在实际文本案例“@test”的末尾有一个预期结果的断言。如果断言通过,测试用例将在方法之后传入一个状态,反之亦然。

//Assertion Example in Testng
Assert.assertEquals(checkin, timestamp);

希望这有帮助。谢谢。

关于java - 使用 Java 将测试结果传递给 Selenium 中的 ITestResult,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45408968/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com