zoukankan      html  css  js  c++  java
  • HttpRunner3.X

    一、环境配置

    1、安装:pip install httprunner

    2、检验是否安装成功:hrun -V

    3、在 HttpRunner 安装成功后,系统中会新增 4 个命令:

    • httprunner: 核心命令,用于所有函数
    • hrun:httprunner 的缩写,功能与 httprunner 完全相同,用于运行yaml/json/pytest测试用例
    • hmake:httprunner make的别名,用于将YAML/JSON测试用例转换为pytest文件
    • har2case:辅助工具,可将标准通用的 HAR 格式(HTTP Archive)转换为YAML/JSON格式的测试用例

    二、创建httprunner项目

    1、创建项目:httprunner startproject httprunner2_demo

    可以cd到指定目录后,再创建,以下就是每个目录代表的含义:
    • debugtalk.py 放置在项目根目录下(借鉴了pytest的conftest文件的设计)
    • .env 放置在项目根目录下,可以用于存放一些环境变量
    • reports 文件夹:存储 HTML 测试报告
    • testcases 用于存放测试用例
    • har 可以存放录制导出的.har文件

    2、运行项目的用例:hrun httprunner2_demo 或 pytest httprunner2_demo

    3、将har文件转换成脚本,举例有文件test.har

    • 转yaml格式脚本:har2case test.har -2y
    • 转json格式脚本:har2case test.har -2j
    • 转pytest文件:har2case test.har

    三、运行代码

      因为httprunner封装了pytest,所有既可以用hrun去运行,也可以用pytest去运行。
      举例有文件test_test.py
    • hrun运行:hrun test_test.py   (若想在日志控制台查看详细的接口返回信息,可以在命令加 -s ,即hrun -s test_test.py
    • pytest运行:pytest tetst_test.py

    四、allure安装

    1、安装python依赖包:pip3 install pytest-allure-adaptor

    2、安装allure:pip install allure-pytest

    执行命令后报错module 'pytest' has no attribute 'allure'的问题,解决方案如下:
    • 发现之前安装了pytest-allure-adaptor。
    • 如果存在安装过的pytest-allure-adaptor插件,
    • 先卸载:pip uninstall pytest-allure-adaptor
    • 重新安装allure-pytest:pip install allure-pytest
    • 如果上述方法安装不了,则改用豆瓣进行安装,格式为:pip install 库名 -i http://pypi.douban.com/simple/  --trusted-host pypi.douban.com

    五、安装allure命令行工具

      下载allure(https://repo.maven.apache.org/maven2/io/qameta/allure/allure-commandline/),打开bin目录运行allure.bat,
    配置环境变量后,在cmd运行allure,返回如下图,即安装成功

    六、allure运行用例,生成测试报告

    1、进入测试用例目录下,指定运行用例:

    • 测试文件:如果是填写文件名,默认是当前路径的文件,如果要运行指定文件,则测试文件要带上路径
    • reprort: 是用于存放的文件(默认是存放在当前路径,如果要存放在指定路径,则文件名要带上路径)
    • pytest运行的测试用例只能是.py格式,hrun运行的测试用例,可以是pytest格式,也可以是yml格式

    步骤一:运行测试用例打开cmd,定位到hetest_re_test.py所在的目录下

    • pytest运行:pytest hetest_re_test.py --alluredir report
    • hrun运行:hrun hetest_re.yml --alluredir=report
      注:也可以在python的控制台直接输入命令,运行完后会在当前文件夹下生成测试结果文件夹 .pytest_cache、report

    步骤二:生成报告

    • allure generate report # 默认在当前目录下生成allure-report文件
    • allure generate report -o allure-report --clean  #  --clean是为了清空已有的测试报告; -o allure-report 是指定清空测试报告的文件allure-report
     会在当前文件夹生成 allure-report 文件夹,包含HTML测试报告 index.html ,然后用浏览器打开查看

    2、全部运行:pytest --alluredir report

    • 全部运行的是test_.*py的文件
    • pytest --alluredir report
    • 会在当前文件夹下生成测试结果文件夹 .pytest_cache、report
    • allure generate report
    • 同样会在当前文件夹生成 allure-report 文件夹,包含HTML测试报告 index.html,含所有测试用例结果数据

    附上HttpRunner官方文档:https://docs.httprunner.org/

  • 相关阅读:
    Jquery 操作radio实例
    不错的linux下通用的java程序启动脚本(转载)
    activeMQ消费消息时网络流量异常大的问题
    利用passssh,批量远程修改机器密码
    tomcat的maxThreads、acceptCount(最大线程数、最大排队数)
    非阻塞IO、NIO为什么会快,我们为什么需要多线程
    关于find命令 name 匹配字符无法正确生效的问题 find: paths must precede expression:
    想取得刚才nextval()的值时,放心大胆的用currval()吧,currval()的返回值并不会因为nextval()的并发访问而混乱
    slef4j的好处
    杂(一) 奶酪
  • 原文地址:https://www.cnblogs.com/Chilam007/p/15021573.html
Copyright © 2011-2022 走看看