美文网首页
Python-测试-unittest-04-测试结果文件输出

Python-测试-unittest-04-测试结果文件输出

作者: Data_Python_VBA | 来源:发表于2020-01-19 20:13 被阅读0次

微信公众号原文

系统:Windows 7
语言版本:Anaconda3-4.3.0.1-Windows-x86_64
编辑器:pycharm-community-2016.3.2

  • 这个系列讲讲Python的测试版块,江湖有说,没有经过测试的代码就直接投入生产环境使用,是不地道的,基于此,还是学习测试吧
  • 今天继续讲讲单元测试,将测试的结果输出到一个文本文件

Part 1:代码

import unittest
from python_test_example.be_tested_02 import *


class TestClass(unittest.TestCase):
    def test_e_to_list(self):
        list_ = str_to_list("0-2-8-9-6-3")
        self.assertIn(6, list_)
        self.assertNotIn("6", list_)

    def test_f(self):
        self.assertEqual("1", True)

    def test_d_islower(self):
        self.assertTrue("CASE".islower())
        self.assertFalse("CASE".islower())


if __name__ == '__main__':
    suite = unittest.TestSuite()

    tests = [TestClass("test_e_to_list"), TestClass("test_d_islower"), TestClass("test_f")]
    suite.addTests(tests)

    with open('TestResult.txt', 'a') as f:
        runner = unittest.TextTestRunner(stream=f, verbosity=2)
        runner.run(suite)

代码截图

2.png

对比上一篇

1.png

Part 2:核心区别

    with open('TestResult.txt', 'a') as f:
        runner = unittest.TextTestRunner(stream=f, verbosity=2)
        runner.run(suite)

输出结果文件

3.png

Part 3:部分代码解读

  1. with open('TestResult.txt', 'a') as f:
    • 其中 'a' 为操作方式,表示open for writing, appending to the end of the file if it exists,追加的意思,表示在原有内容后面追加
    • 改为:with open('TestResult.txt', 'w') as f:,在本示例中也是可以的,表示清空上次的数据,重新写入

不同打开方式解读(来自源码)

4.png

本文为原创作品,欢迎分享朋友圈

长按图片识别二维码,关注本公众号
Python 优雅 帅气


12x0.8.jpg

相关文章

网友评论

      本文标题:Python-测试-unittest-04-测试结果文件输出

      本文链接:https://www.haomeiwen.com/subject/vyqdzctx.html