如何通过断言失败

时间:2019-01-19 22:48:44

标签: java selenium testng assertion

我正在尝试使用Selenium Webdriver + Java + TestNG Framework来自动化网页。

[
    {
        '$unwind': {
            'path': '$ratings'
        }
    }, {
        '$group': {
            '_id': '$_id', 
            'averageRating': {
                '$avg': '$ratings.ratingValue'
            }
        }
    }
]

即使第一个断言失败,如何执行第二个断言语句。尝试catch块对我不起作用。

谢谢

2 个答案:

答案 0 :(得分:1)

您可以使用软断言。软断言是断言失败时不会引发异常的断言类型,在断言该语句后将继续进行下一步。看看this

答案 1 :(得分:0)

有两种断言:

  • 硬断言-您正在使用什么
  • 软件断言-您需要使用什么

一般的断言是硬断言:

硬断言:当断言语句失败并且测试套件继续进行下一个测试时,立即引发AssertException 如果断言条件失败,则硬断言会将测试方法标记为失败,并且该方法中的其余步骤将中止。

软件资产:断言失败时不会引发异常,并在断言语句之后继续下一步。首先,它会收集错误,然后在使用assertAll()时将引发异常。

这是使用软断言的方式:

SoftAssert softAssertion= new SoftAssert();

softAssertion.assertTrue(false);

softAssertion.assertAll();