解决用try except 捕获assert函数产生的AssertionError异常时,导致断言失败的用例在测试报告中通过的问题...

本文探讨了在Python自动化测试中使用assert函数时常见的问题,特别是在结合try-except语句时,如何正确处理AssertionError异常,确保测试报告准确反映用例状态。通过加入raise语句重新抛出异常,使测试过程更加健壮。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  在使用Python3做自动化测试过程中可能会遇到,assert函数不加try  except,就可以正常在报告里体现用例不通过,加上变成通过。

这是因为在使用try except 时,捕获了assert函数产生的AssertionError异常,导致异常没有上抛,这时只需要在后面加上 raise 就可以再次把它抛出。

        try:# 找到输入框并输入测试数据
            self.driver.find_element_by_id("kw").send_keys(testdata)
            # 找到搜索按钮,并单击
            self.driver.find_element_by_id("su").click()
            time.sleep(3)
            # 断言期望结果中是否出现页面源代码中
            self.assertIn(expectdata,self.driver.page_source)
            time.sleep(3)
      except AssertionError as e:
            logger.info(u"搜索\"%s\",期望\"%s\"失败" % (testdata, expectdata))
            raise 
        else:
            logger.info(u"搜索\"%s\",期望\"%s\"通过"%(testdata,expectdata))

 

转载于:https://www.cnblogs.com/fanjc/p/10072556.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值