• 接口自动化之测试报告


    写好脚本后,需要生成一个测试报告

    目录

    1、安装HTMLTestRunner

    1、安装HTMLTestRunner

    第一步:下载后,放入lib中,下载链接:https://pan.baidu.com/s/1_e6mIgPFzu24k1Q3wbOJ9w 密码:e6nw

    第二步:导入试试,没报错就没问题

    2、应用

    在run_all.py文件中,

    第一步:我们可以调用discover方法,来找到所有的用例

    如图:discover方法,需要传入3个参数,第一个参数start_dir,查找测试用例路径;第二个参数pattern,匹配规则;第三个参数top_level_dir,测试模块的顶层目录,如果没有顶层目录,默认为None

    #找到所有用例
    #用例路径 case_path="D:\test001\labledemo" def all_case(): discover=unittest.defaultTestLoader.discover(case_path, "test*.py") return discover

      

    第二步:调用HTMLTestRunner中的方法,来生成报告

    调用HTMLTestRunner方法,给定参数的值,第一个参数stream,查找测试报告路径;第二个参数title,html文件的title;第三个参数description,用例的执行情况标题 

        #将生成的报告写入文件
        fp=open(report_path,"wb")  #写测试报告
      
        runner= HTMLTestRunner.HTMLTestRunner(stream=fp,
                                              title=u'这是我的报告',
                                              description=u'用例执行情况')
    
    
        runner.run(all_case()) #调用run方法,执行
        fp.close()  #关闭,以免影响内存
    

      

    完整代码如下:

    import HTMLTestRunner
    import unittest
    
    #用例路径
    case_path="D:\test001\labledemo"
    #报告存放路径
    report_path="D:\test001\report\result.html"
    
    def all_case():
        discover=unittest.defaultTestLoader.discover(case_path,
                                                     "test*.py")
        return discover
            
    if __name__=="__main__":
        fp=open(report_path,"wb")  #写测试报告
      
        runner= HTMLTestRunner.HTMLTestRunner(stream=fp,
                                              title=u'这是我的报告',
                                              description=u'用例执行情况')
        runner.run(all_case()) #调用run方法,执行
        fp.close()  #关闭,以免影响内存
    

     第四步:优化

    调用os和sys的一些方法,让代码自己找用例,和生成报告的位置

    import os
    import sys
    reload(sys)
    sys.setdefaultencoding('utf-8')
    
    # 用例路径
    case_path = os.path.join(os.getcwd(), "case")
    # 报告存放路径
    report_path = os.path.join(os.getcwd(), "report")
    

     完整代码:

    import HTMLTestRunner
    import unittest
    import os
    import sys
    reload(sys)
    sys.setdefaultencoding('utf-8')
    
    #用例路径
    # case_path="D:\test001\labledemo"
    case_path=os.path.join(os.getcwd(),"case")
    #报告存放路径
    # report_path="D:\test001\report\result.html"
    report_path=os.path.join(os.getcwd(),"report")
    def all_case():
        discover=unittest.defaultTestLoader.discover(start_dir=case_path,
                                                     pattern="test*.py",
                                                     top_level_dir=None)
    
        return discover
    
    if __name__=="__main__":
        fp=open(report_path,"wb")
        runner= HTMLTestRunner.HTMLTestRunner(stream=fp,
                                              title=u'这是我的报告',
                                              description=u'用例执行情况')
        runner.run(all_case())
        fp.close()
    

      

     

  • 相关阅读:
    慎用ViewController的跳转
    Cocos2d中从场景切换到UIViewController视图方法总结
    presentModalViewController
    NSString / NSMutableString 字符串处理,常用代码 (实例)
    NSXMLParser解析xml
    preformselector 多个参数设置
    UITableView 异步加载图片缓存 笔记
    消息通信机制NSNotificationCenter
    UITableView进行讲解 真的是太详细了
    CLR读书笔记第二章 生成,打包,部署和管理应用程序及类型
  • 原文地址:https://www.cnblogs.com/weizhideweilai/p/9452348.html
Copyright © 2020-2023  润新知