Python unittest使用

一:避坑点1、使用unittest时,默认不会执行if __name__ == '__main__':,而是以“Run 'Unittests in XXX' ”方式运行。我们需要通过menu:Run->Edit Configurations打开配置窗口,在Python下,新建一个运行方式case_python(名字自取),将运行的脚本加入,保存后,以此方式运行测试脚本,就能进入方法if __name__ == '__main__':。script path填入脚本的路径。Wor.
摘要由CSDN通过智能技术生成

一:避坑点

1、使用unittest时,默认不会执行if __name__ == '__main__':,而是以“Run 'Unittests in XXX' ”方式运行。

我们需要通过menu:Run->Edit Configurations打开配置窗口,在Python下,新建一个运行方式case_python(名字自取),将运行的脚本加入,保存后,以此方式运行测试脚本,就能进入方法if __name__ == '__main__':。

 

script path填入脚本的路径。Working directory填入项目的根目录。

2、进入方法if __name__ == '__main__':,我们可以添加自定义的测试顺序,或者将测试结果输出到外部文件或html文件中。

二:自定义测试case执行顺序

1、if __name__ == '__main__':中,可以通过TestSuite定义case执行顺序

suite = unittest.TestSuite()
suite.addTest(TestCreateTask("test_02"))
suite.addTest(TestCreateTask("test_01"))

2、定义TestCase时,可以通过case的名称来定义执行顺序

如:def test_01(self)、def test_02(self)

能通过名称来确定执行顺序的原因是:unittest源码getTestCaseNames对测试用例的名称进行了排序,默认是根据ASCII码的顺序加载测试用例,数字与字母的顺序为:0-9,A-Z,a-z。

三:将测试结果输出到外部文件

if __name__ == '__main__':
    # 安装顺序执行case
    suite = unittest.TestSuite()
    suite.addTest(TestCreateTask("test_02"))
    suite.addTest(TestCreateTask("test_01"))
    # 执行结果输出到外部文件
    with open("unit_test_result.txt", "w") as f:
        # verbosity = 2 查看完成的执行情况
        # verbosity默认为1,可以设置为0和2。
        # 0 (静默模式): 你只能获得总的测试用例数和总的结果。
        # 1 (默认模式): 非常类似静默模
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值