pytest+allure展示环境信息
allure展示环境信息
要将信息添加到Environment小部件,只需在生成报告之前在目录中创建environment.properties(或environment.xml)文件allure-results。
环境属性
浏览器= Chrome
Browser.Version = 63.0
展位=生产
environment.xml
路径:
report/xml目录下
<environment>
<parameter>
<key>Browser</key>
<value>Chrome</value>
</parameter>
<parameter>
<key>Browser.Version</key>
<value>63.0</value>
</parameter>
<parameter>
<key>Stand</key>
<value>Production</value>
</parameter>
</environment>
例如:
<?xml version="1.0" encoding="utf-8"?>
<environment>
<parameter>
<key>cinder_api</key>
<value>v2</value>
</parameter>
<parameter>
<key>environment</key>
<value>192.168.54.121</value>
</parameter>
<parameter>
<key>glance_api</key>
<value>v2</value>
</parameter>
<parameter>
<key>host</key>
<value>192.168.54.121</value>
</parameter>
<parameter>
<key>keystone_api</key>
<value>v3</value>
</parameter>
<parameter>
<key>logininfo</key>
<value>{"auth": {"scope": {"project": {"domain":{"id": "default"},"name": "${project_token_name}$"}}, "identity":{"password": {"user": {"domain":{"id": "default"},"password":"admin","name":"admin"}},"methods":["password"]}}}</value>
</parameter>
<parameter>
<key>neutron_api</key>
<value>v2</value>
</parameter>
<parameter>
<key>nova_api</key>
<value>v2</value>
</parameter>
<parameter>
<key>openstack_version</key>
<value>liberty</value>
</parameter>
<parameter>
<key>tester</key>
<value>mrwuzs</value>
</parameter>
<parameter>
<key>versioncode</key>
<value>1.0</value>
</parameter>
<parameter>
<key>virtual</key>
<value>VMware</value>
</parameter>
</environment>
运行测试报告展示如下:

根据配置信息自动生成xml文件
配置文件:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2019/10/20 19:36
# @Author : mrwuzs
# @Site :
# @File : initialize_Env.py
# @Software: PyCharm
import os
from Common.Log import MyLog as logging
from Conf.ConfRelevance import ConfRelevance
BASE_PATH = str(os.path.abspath(os.path.dirname(os.path.dirname(__file__))))
CONF_PATH = BASE_PATH + "\\Conf\\cfg.ini"
ENV_PATH = BASE_PATH + "\\Report\\xml\\environment.xml"
class Init_Env:
"""初始化环境信息,更新xml文件"""
def __init__(self):
logging.info("获取环境配置信息")
#读取配置文件,返回字典格式
self.data = ConfRelevance(CONF_PATH,"env").get_relevance_conf()
def dict_to_xml(self):
parameter = []
for k in sorted(self.data.keys()):
xml = []
v = self.data.get(k)
if k == 'detail' and not v.startswith('<![CDATA['):
v = '<![CDATA[{}]]>'.format(v)
xml.append('<key>{value}</key>'.format(value=k))
xml.append('<value>{value}</value>'.format(value=v))
parameter.append('<parameter>{}</parameter>'.format(''.join(xml)))
return '<environment>{}</environment>'.format(''.join(parameter))
def init(self):
data = self.dict_to_xml()
with open(ENV_PATH,'w') as f:
f.write(data)
if __name__ == '__main__':
Init = Init_Env()
Init.init()
pytest+allure展示环境信息的更多相关文章
- Pytest+Allure定制报告
前言: 最近在研究接口自动化的框架,好的测试报告在整个测试框架起到至关重要的部分.终于被我发现一个超好用的报告框架,不仅报告美观,而且方便CI集成. 就是它,就是它:Allure Test Repor ...
- appium+pytest+allure+jenkins 如何实现多台手机连接
使用appium可以实现app自动化测试,我们之前是连接一台手机去运行,如何同时连接多台手机呢?很多人可能想到的是多线程(threading).今天分享一种比多线程更简单的方法,虽然不是多台手机同时运 ...
- pytest+allure测试框架搭建
https://blog.csdn.net/wust_lh/article/details/86685912 https://www.jianshu.com/p/9673b2aeb0d3 定制化展示数 ...
- pytest+allure(allure-pytest基于这个插件)设计定制化报告
一:环境准备 1.python3.6 2.windows环境 3.pycharm 4.allure-pytest 5.allure2.8.0 6.java1.8 allure-pytest快速安装 在 ...
- pytest+allure(pytest-allure-adaptor基于这个插件)设计定制化报告
一:环境准备 1.python3.6 2.windows环境 3.pycharm 4.pytest-allure-adaptor 5.allure2.8.0 6.java1.8 pytest-allu ...
- Pytest单元测试框架——Pytest+Allure+Jenkins的应用
一.简介 pytest+allure+jenkins进行接口测试.生成测试报告.结合jenkins进行集成. pytest是python的一种单元测试框架,与python自带的unittest测试框架 ...
- Python+Pytest+Allure+Git+Jenkins接口自动化框架
Python+Pytest+Allure+Git+Jenkins接口自动化框架 一.接口基础 接口测试是对系统和组件之间的接口进行测试,主要是效验数据的交换,传递和控制管理过程,以及相互逻辑依赖关系. ...
- Pytest测试框架(五):pytest + allure生成测试报告
Allure 是一款轻量级.支持多语言的开源自动化测试报告生成框架,由Java语言开发,可以集成到 Jenkins. pytest 测试框架支持Allure 报告生成. pytest也可以生成juni ...
- pytest使用笔记(三)——pytest+allure+jenkins配置使用
按照pytest使用笔记(二)把pytest+allure配置好后,现在在jenkins配置好,先实现手动构建(立个小目标) 一,安装jenkins插件 首页->系统管理->插件管理,从“ ...
随机推荐
- 实时跟踪之TRACA
背景: 目前,在实时跟踪领域存在着越来越多的先进方法,同时也极大地促进了该领域的发展.主要有两种不同的基于深度学习的跟踪方法:1.由在线跟踪器组成,这些跟踪器依赖网络连续的微调来学习目标的变化外观,精 ...
- Sql 语法练习
select * from Student select * from Class select * from Score select * from Subject --1.查询出和张三住在同一个地 ...
- sql从n月到m月数据汇总,没有数据,当月显示0
做个备份 -- 按月份统计select date1, MONTHS, createtime, nvl(count2, 0)+count1 from ( SELECT TO_CHAR(ADD_MONTH ...
- Web SQL与indexedDB
虽然在HTML5 WebStorage介绍了html5本地存储的Local Storage和Session Storage,这两个是以键值对存储的解决方案,存储少量数据结构很有用,但是对于大量结构化数 ...
- PAT乙级1043
题目链接 https://pintia.cn/problem-sets/994805260223102976/problems/994805280074743808 题解 这次再次体会到题意理解的正确 ...
- EasyUi Datagrid中footer renderFooter
默认的'rowStyler' 选项不支持footer,想让footer支持rowStyler的话,dategird就得重写.代码如下. var myview = $.extend({}, $.fn.d ...
- 微信小程序 base64ToArrayBuffer
base64ToArrayBuffer 将 base64 的字符串转化为 ArrayBuffer 对象 示例代码: 使用位置:在 JS文件的任意函数中使用 const base64 = 'CxYh'; ...
- jsp+jstl实现登录验证
<c:choose> <c:when test="${!sessionScope.user eq null}"> <li><a href= ...
- 详解Object.create(null)
在Vue和Vuex的源码中,作者都使用了Object.create(null)来初始化一个新对象.为什么不用更简洁的{}呢? 在SegmentFault和Stack Overflow等开发者社区中也有 ...
- windows下常用cmd命令
CMD命令:开始->运行->键入cmd或command(在命令行里可以看到系统版本.文件系统版本)1. appwiz.cpl:程序和功能 2. calc:启动计算器 3. certmgr. ...