zoukankan      html  css  js  c++  java
  • Python自动化测试学习(四)— 使用discover方法执行多个测试文件

    1、说明

    在上一篇博客中,只是集成到了单个测试文件中,最终目的是将集成多个测试文件。例如登录、注册等模块测试用例放在一起执行,使用discover()方法,找到指定目录下可匹配的测试文件,循环添加到测试套件中。

    2、目录结构

    3、对HtmlReport类,做出如下修改

    # coding=utf-8
    import unittest,time
    import HTMLTestRunner
    
    
    class HtmlReport:
            # 定义测试套件
            test_suite = unittest.TestSuite()
            # 测试的目录
            test_dir = "D:\Programs\pythonProject\src\testcase"
            '''
            通过discover方法,从执行的开始目录到子目录递归查找‘Test’开头的所有模块,并返回test_suit
            test_dir:测试用例所在目录
            pattern='Test*.py':匹配Test开头的py文件
            top_level_dir:测试模块的顶层目录,如果没有顶层目录,默认为None;
            '''
            discover = unittest.defaultTestLoader.discover(test_dir, pattern='Test*.py', top_level_dir=None)
            # 将找到的测试用例,循环加入测试套件中
            for test_case in discover:
                test_suite.addTests(test_case)
    
    
    
            # 指定报告存放位置
            now_time = time.strftime("%Y%m%d%H%M%S")
            file_path = "D:\Programs\pythonProject\src\report\report_html\" + now_time + ".html"
            fs = open(file_path, 'wb')
            runner = HTMLTestRunner.HTMLTestRunner(
                stream=fs,
                title="126邮箱测试报告",
                description="用例执行情况,如下图所示:"
            )
    
            runner.run(test_suite)
            fs.close()
    

    4、查看测试报告

  • 相关阅读:
    linux命令总结之date命令
    linux命令总结之查找命令find、locate、whereis、which、type
    Centos下Vim编辑器基本配置
    linux命令总结之tr命令
    Linux运维四:文件属性及文件权限
    Linux三剑客之awk命令
    Linux各种重要配置文件详解
    linux命令总结之seq命令
    linux命令总结之ls命令
    Linux内存(手动释放cache)
  • 原文地址:https://www.cnblogs.com/liho/p/13851923.html
Copyright © 2011-2022 走看看