• 脚本可执行,但无HTML测试报告文件生成,其造成的原因是在PyCharm的执行模式错误


    定义测试报告两种写法:

    1)测试报告直接在本地绝对路径下生成

    1 # 导入HTMLTestRunner模块
    2 import HTMLTestRunner
    3 # 通过open()方法以二进制写模式('wb')打开本地绝对路径下的result.html文件,如果没有,则自动创建
    4 fp = open('D:\folder_data\result.html', 'wb')
    5 # 调用HTMLTestRunner模块下的HTMLTestRunner类
    6 # stream 指定测试报告文件;title 定义测试报告的标题;description 定义测试报告的副标题
    7 runner = HTMLTestRunner.HTMLTestRunner(stream=fp, title='冒烟测试报告', description='用例执行情况: ')

    2)运行的脚本的上一级目录有_reports,测试报告页会在运行时自动在该目录下生成

    1 # 导入HTMLTestRunner模块,导入方式是从集成至脚本文件夹内的模块导入
    2 from packages.HTMLTestRunner import HTMLTestRunner
    3 fp = open('../_reports/result.html', 'wb')
    4 runner = HTMLTestRunner(stream=fp, title='冒烟测试报告', description='用例执行情况: ')

    目录结构如图:

    脚本可执行,但无HTML测试报告文件生成,其造成的原因是在PyCharm的执行模式错误

    pycharm执行脚本时,调用的是pycharm自带的unittest框架,不会执行HTMLTestRunner库的方法。所以应以非unittest模式运行,也就是用python文件直接运行。

    错误执行模式:即使选择py.tests模式运行脚本,但最后还是在Python tests下运行也是生成测试报告失败

    解决方法:取消默认运行unittest模式

    ①Pycharm工具栏File-> Settings -> Tools -> Python Integrated Tools -> Default test runner ,将Unittests改为py.test即可(如果报错则需要安装pytest库,安装了pytest库仍报错,则再打开取消默认运行unittest方法的步骤页,刚刚选择的修改为python模式运行下方会提示出错,可fix,点击fix按钮即可)

    ②Pycharm右上角,点开Edit Configurations,展开Python和Python tests这两个选项,Python tests选项下运行则以unittest模式运行,只需将运行的脚本从Python tests选项下移除,点击Python选项,选择好Script path和Python interpreter和Working directory保存,以python文件模式运行即可

    正确运行模式

  • 相关阅读:
    【线段树】【积累】主席树杂题积累 2016CCPC长春K SequenceII
    【积累】最小不能表示正整数 (以及一些做法
    【字符串】回文树&&回文自动机PAM
    【字符串】后缀自动机SAM
    【字符串】AC自动机
    【字符串】Trie树
    StringUtils类中isEmpty与isBlank的区别
    【Git】pull遇到错误:error: Your local changes to the following files would be overwritten by merge:
    jsp 与jstl
    listener 作用
  • 原文地址:https://www.cnblogs.com/kristin/p/10332815.html
Copyright © 2020-2023  润新知