zoukankan      html  css  js  c++  java
  • python 中 raise 的用法

    一 用例中用法:

            # 获取预期结果 test_data["expected"]
            # 断言
            # 如果出现断言失败,需要将失败的用例记录到logger当中
            # 如果断言失败,会抛出一个异常,AssertionError
            # 如果不手动抛出异常,程序正常走不是走try就是except分支,测试用例都会全部显示通过;
            # 抛出异常就意味着程序运行错误,这条用例执行失败
            try:
                print(res["msg"])
                self.assertEqual(test_data["expected"],res["code"])
                # 把实际结果写入excel数据,通过case_id获取行号
                self.excel_handler.write(config.data_path,
                                         "register",
                                         test_data["case_id"]+1,
                                         9,
                                         "测试通过")
            except AssertionError as e:    # 如果出现错误,就会执行except的代码
                # 记录日志logger
                self.logger.error("测试用例失败:{}".format(e))
                # 把实际结果写入excel数据,通过case_id获取行号
                self.excel_handler.write(config.data_path,
                                         "register",
                                         test_data["case_id"] + 1,
                                         9,
                                         "测试失败")
                raise e  # 程序运行错误,抛出异常,就意味着这条用例执行失败

    二 有关于python里raise显示引发异常的方法:

    • 当程序出错时,python会自动触发异常,也可以通过raise显示引发异常
    • 一旦执行了raise语句,raise之后的语句不在执行
    • 如果加入了try,except,那么except里的语句会被执行
    • 代码如下:
    • 复制代码
      try:
          s = None
          if s is None:
              print('s是空对象')
              raise NameError
          print(len(s))
      
      except Exception:
          print('空对象没有长度')
  • 相关阅读:
    15 手写数字识别-小数据集
    14 深度学习-卷积
    13-垃圾邮件分类2
    12.朴素贝叶斯-垃圾邮件分类
    11.分类与监督学习,朴素贝叶斯分类算法
    9、主成分分析
    7.逻辑回归实践
    8.特征选择,过滤式
    6.逻辑回归
    5.线性回归算法
  • 原文地址:https://www.cnblogs.com/wz123/p/12366784.html
Copyright © 2011-2022 走看看