allure环境搭建

在搭建之前你应该有python、pycharm

jdk也需要(文中忽略,可以参考网上文档安装,可以用jdk1.8)

以windows为例,mac、linux你用到这些操作系统,这种搭建就是小儿科了。

allure介绍

  • 官网:https://docs.qameta.io/allure/

  • 英文介绍

    • Allure Framework is a flexible lightweight multi-language test report tool that not only shows a very concise representation of what have been tested in a neat web report form, but allows everyone participating in the development process to extract maximum of useful information from everyday execution of tests

  • 翻译:

    • allure是一个框架

    • 灵活、轻量、多语言

    • 测试报告

allure-pytest库安装

  • pip安装

     pip  install -i https://mirrors.aliyun.com/pypi/simple allure-pytest 
  • 说明:

    • 你要用allure,你就要有pytest这个库

    • 安装allure-pytest的时候如果没有pytest是会自动安装的,因为他依赖pytest

       pip show allure-pytest
       ​
       Name: allure-pytest
       Version: 2.9.45
       Summary: Allure pytest integration
       Home-page: https://github.com/allure-framework/allure-python
       Author: QAMetaSoftware, Stanislav Seliverstov
       Author-email: sseliverstov@qameta.io
       License: Apache-2.0
       Location: c:\python39\lib\site-packages
       Requires: allure-python-commons, pytest, six
       Required-by:
    • 你可以理解为allure-pytest是pytest的一个插件

    • 但跟大多数插件不一样的命名allure-pytest,而普通的插件多是pytest-xxx的形式。

  • 注意事项

    • 如果你是新手,你有多个环境(可能是多个python、或有虚拟环境),那推荐在pycharm中安装

    • 如果你没有配置pip的源,可以手工加-i参数来指定

       pip install -i https://pypi.tuna.tsinghua.edu.cn/simple  allure-pytest
       ​
       # 类似的源头很多,比如阿里云的
       https://mirrors.aliyun.com/pypi/simple
    • 如果你用pycharm安装,那就简单很多,当然也最好配置要安装仓库。

allure应用程序配置

第一步:下载allure应用程序

  • 你下面2个地址任选其一下载即可。

    • maven仓库地址

     https://repo.maven.apache.org/maven2/io/qameta/allure/allure-commandline/
    • github地址

     https://github.com/allure-framework/allure2/releases
  • 选择自己的平台版本(windows你可以下载zip格式,linux就tgz),下载,然后解压到某个目录下(下图是2022年的一个截图,你看的到未必一样)

第二步:将allure所在的目录配置到PATH中去

  • 此处以allure-2.14.0为图例,所有版本都一样的配置方法

  

  • 新开一个cmd,输入命令以验证

     C:\Users\songqin008>allure --version
     2.14.0

第三步:重启pycharm,确保能读取到更新后的PATH

  • 首次配置需要

  • 其实也可以手工配置PATH

第四步:编写一个测试代码

  • DEMO

     ​
     import pytest,os
     ​
     def test_001():
         assert 1==1
     ​
     ​
     if __name__ == '__main__':
         pytest.main(['-sv',__file__,'--alluredir','./tmp','--clean-alluredir'])
         os.system(f'allure serve ./tmp')
  • 运行代码,注意你的pycharm的运行模式需要是unittest,我在另外一篇博文中提到了细节,https://www.cnblogs.com/wuxianfeng023/p/16616591.html

  • 控制台输出

     D:\Python39\python.exe D:/demos/demo_allure.py
     ============================= test session starts =============================
     platform win32 -- Python 3.9.6, pytest-7.1.2, pluggy-1.0.0 -- D:\Python39\python.exe
     cachedir: .pytest_cache
     metadata: {'Python': '3.9.6', 'Platform': 'Windows-10-10.0.19044-SP0', 'Packages': {'pytest': '7.1.2', 'py': '1.11.0', 'pluggy': '1.0.0'}, 'Plugins': {'allure-pytest': '2.9.45', 'anyio': '3.5.0', 'Faker': '13.3.4', 'assume': '2.4.3', 'base-url': '1.4.2', 'dependency': '0.5.1', 'forked': '1.4.0', 'html': '3.1.1', 'instafail': '0.4.2', 'metadata': '1.11.0', 'ordering': '0.6', 'repeat': '0.9.1', 'rerunfailures': '10.2', 'sugar': '0.9.4', 'timeout': '2.1.0', 'xdist': '2.5.0'}, 'JAVA_HOME': 'D:\\Java\\jdk1.8.0_301\\', 'Base URL': ''}
     rootdir: D:\pythonProject\AutoTest\AutoHuayan61\demos
     plugins: allure-pytest-2.9.45, anyio-3.5.0, Faker-13.3.4, assume-2.4.3, base-url-1.4.2, dependency-0.5.1, forked-1.4.0, html-3.1.1, instafail-0.4.2, metadata-1.11.0, ordering-0.6, repeat-0.9.1, rerunfailures-10.2, sugar-0.9.4, timeout-2.1.0, xdist-2.5.0
     collecting ... collected 1 item
     ​
     demo_allure.py::test_001 PASSED
     ​
     ============================== 1 passed in 0.10s ==============================
     Generating report to temp directory...
     Report successfully generated to C:\Users\SONGQI~1\AppData\Local\Temp\4761329703454998013\allure-report
     Starting web server...
     2022-08-09 11:42:32.445:INFO::main: Logging initialized @2843ms to org.eclipse.jetty.util.log.StdErrLog
     Server started at <http://192.168.10.147:12501/>. Press <Ctrl+C> to exit
  • 会自动打开一个浏览器,界面大致如下,基本就ok了。下面就是学习allure的细节了,此处不表。

allure环境搭建的更多相关文章

  1. Java自动化环境搭建笔记(3)

    Java自动化环境搭建笔记(3) 自动化测试 自动化的环境已经基本搭建完成,后续可对BaseTester基类以及工具类进行扩展.下面便是持续集成的环境的搭建: Jenkins安装 git安装 源码上传 ...

  2. Java自动化环境搭建笔记(2)

    Java自动化环境搭建笔记(2) 自动化测试 在笔记一中已经完成了一键构建项目.xml指定规划测试集.数据解耦与allure报告生成的开发.接下来便是: 浏览器驱动通过配置启动 页面元素定位解耦,通过 ...

  3. Java自动化环境搭建笔记(1)

    Java自动化环境搭建笔记(1) 自动化测试 先搭建java接口测试的环境: 使用mvn命令构建项目 测试集通过testNG.xml组织并运行 测试数据解耦,通过Excel等文件提供 基础依赖 创建m ...

  4. Pytest单元测试框架:插件-allure-pytest环境搭建并在本地生成一个测试报告

    之前写了allure-pytest的官方文档啃的内容,有些交流的朋友,实践起来没什么头绪,所以就有了这篇文章,也给自己填个坑 第一步:搭建Allure.JDK环境 1. 搭建JDK环境 不装jdk你会 ...

  5. .NET Core系列 : 1、.NET Core 环境搭建和命令行CLI入门

    2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文章,原因是.NET Core的入门门槛相当高, ...

  6. Azure Service Fabric 开发环境搭建

    微服务体系结构是一种将服务器应用程序构建为一组小型服务的方法,每个服务都按自己的进程运行,并通过 HTTP 和 WebSocket 等协议相互通信.每个微服务都在特定的界定上下文(每服务)中实现特定的 ...

  7. rnandroid环境搭建

    react-native 环境搭建具体步骤这个大家已经玩烂了,这个主要是记录下来自己做win7系统遇到的坑 1.com.android.ddmlib.installexception 遇到这个问题,在 ...

  8. python开发环境搭建

    虽然网上有很多python开发环境搭建的文章,不过重复造轮子还是要的,记录一下过程,方便自己以后配置,也方便正在学习中的同事配置他们的环境. 1.准备好安装包 1)上python官网下载python运 ...

  9. springMVC初探--环境搭建和第一个HelloWorld简单项目

    注:此篇为学习springMVC时,做的笔记整理. MVC框架要做哪些事情? a,将url映射到java类,或者java类的方法上 b,封装用户提交的数据 c,处理请求->调用相关的业务处理—& ...

  10. 【定有惊喜】android程序员如何做自己的API接口?php与android的良好交互(附环境搭建),让前端数据动起来~

    一.写在前面 web开发有前端和后端之分,其实android还是有前端和后端之分.android开发就相当于手机app的前端,一般都是php+android或者jsp+android开发.androi ...

随机推荐

  1. 洛谷P4168 蒲公英 分块处理区间众数模板

    题面. 许久以前我还不怎么去机房的时候,一位大佬好像一直在做这道题,他称这道题目为"大分块". 其实这道题目的思想不只可以用于处理区间众数,还可以处理很多区间数值相关问题. 让我们 ...

  2. 嵌入式-C语言基础:字符串结束标识符

    #include<stdio.h> int main() { char cdata[]={'h','e','l','l','o'}; char cdata2[]="hello&q ...

  3. python调用c++生成的dll

    前言 这个我查询了很多资料,所以到此为止,相当于做一个总结 c++代码如何生成dll #include<iostream> using namespace std; extern &quo ...

  4. 关于mysql数据库user表没有password字段

    解决 这个是因为mysql的版本问题,是mysql 5.7版本出现的,具体是mysql 5.7.x 开始变化的我不知道 新的字段变更为authentication_string 修改密码的方式还是和原 ...

  5. 【每日一题】【迭代器,泛型】2022年1月8日-NC93 设计LRU缓存结构

    描述设计LRU(最近最少使用)缓存结构,该结构在构造时确定大小,假设大小为 k ,并有如下两个功能1. set(key, value):将记录(key, value)插入该结构2. get(key): ...

  6. Django批量插入(自定义分页器)

    目录 一:批量插入 1.常规批量插入数据(时间长,效率低 不建议使用) 2.使用orm提供的bulk_create方法批量插入数据(效率高 减少操作时间) 3.总结 二:自定义分页器 1.自定义分页器 ...

  7. cs231n__2. K-nearest Neighbors

    CS231n 2 K-Nearest Neighbors note ---by Orangestar 1. codes: import numpy as np class NearestNeighbo ...

  8. JavaScript:箭头函数:省略写法

    之所以把箭头函数拎出来,是因为它不仅仅是声明函数的一种方式,它还是函数式编程的重要根基,它使得函数的使用更加的灵活,同时,它的语法,也相对于function声明的函数更加灵活和复杂. 箭头函数的省略写 ...

  9. ArcObjects SDK开发 024开发的技术和技巧

    1.基本技术 开发方面.会使用C#开发语言和Visual Studio开发工具.会使用WinForm或者WPF开发. 理论知识方面.了解GIS的相关概念,例如矢量数据,栅格数据,空间参考.比例尺等概念 ...

  10. [0x12] 135.最大子序和【单调队列】

    我在知乎上看到一句话,如一道晴天霹雳: "如果一个选手比你小还比你强,你就可以退役了."--单调队列的原理 题意 link(more:P1714) 给定一个长度为 \(n\) 的整 ...