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展示环境信息的更多相关文章

  1. Pytest+Allure定制报告

    前言: 最近在研究接口自动化的框架,好的测试报告在整个测试框架起到至关重要的部分.终于被我发现一个超好用的报告框架,不仅报告美观,而且方便CI集成. 就是它,就是它:Allure Test Repor ...

  2. appium+pytest+allure+jenkins 如何实现多台手机连接

    使用appium可以实现app自动化测试,我们之前是连接一台手机去运行,如何同时连接多台手机呢?很多人可能想到的是多线程(threading).今天分享一种比多线程更简单的方法,虽然不是多台手机同时运 ...

  3. pytest+allure测试框架搭建

    https://blog.csdn.net/wust_lh/article/details/86685912 https://www.jianshu.com/p/9673b2aeb0d3 定制化展示数 ...

  4. pytest+allure(allure-pytest基于这个插件)设计定制化报告

    一:环境准备 1.python3.6 2.windows环境 3.pycharm 4.allure-pytest 5.allure2.8.0 6.java1.8 allure-pytest快速安装 在 ...

  5. 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 ...

  6. Pytest单元测试框架——Pytest+Allure+Jenkins的应用

    一.简介 pytest+allure+jenkins进行接口测试.生成测试报告.结合jenkins进行集成. pytest是python的一种单元测试框架,与python自带的unittest测试框架 ...

  7. Python+Pytest+Allure+Git+Jenkins接口自动化框架

    Python+Pytest+Allure+Git+Jenkins接口自动化框架 一.接口基础 接口测试是对系统和组件之间的接口进行测试,主要是效验数据的交换,传递和控制管理过程,以及相互逻辑依赖关系. ...

  8. Pytest测试框架(五):pytest + allure生成测试报告

    Allure 是一款轻量级.支持多语言的开源自动化测试报告生成框架,由Java语言开发,可以集成到 Jenkins. pytest 测试框架支持Allure 报告生成. pytest也可以生成juni ...

  9. pytest使用笔记(三)——pytest+allure+jenkins配置使用

    按照pytest使用笔记(二)把pytest+allure配置好后,现在在jenkins配置好,先实现手动构建(立个小目标) 一,安装jenkins插件 首页->系统管理->插件管理,从“ ...

随机推荐

  1. Appium|Locator Strategy ... is not supported for this session

    appim server log InvalidSelectorError: Locator Strategy 'xpath,//android.widget.TextView[@resource-i ...

  2. Image Processing and Analysis_8_Edge Detection:Theory of Edge Detection ——1980

    此主要讨论图像处理与分析.虽然计算机视觉部分的有些内容比如特 征提取等也可以归结到图像分析中来,但鉴于它们与计算机视觉的紧密联系,以 及它们的出处,没有把它们纳入到图像处理与分析中来.同样,这里面也有 ...

  3. host文件简介及修改后不能保存解决方法

    一.文件概述 Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先 ...

  4. Ubuntu下多个gcc版本之间的切换

    Ubuntu下多个gcc版本之间的切换 1.查看当前系统的gcc版本 gcc -v 会输出以下信息: Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO ...

  5. BZOJ4886 [Lydsy1705月赛]叠塔游戏[基环树]

    很妙的一道题. 由于本人过于zz,不会这道题,通过厚颜无耻翻阅题解无数终于懂了这道题,所以这里转载一位神仙的blog. 没有看懂?没事,再来一篇. 这题个人认为主要在于转化题意和建图,这两点想通了应该 ...

  6. Excel 中大量图片如何快速导出? 转载自:http://www.zhihu.com/question/20800948

    我的办法如下,应该也不慢. 如果是针对以.xlsx为后缀的表格(Excel2007以上的版本),这样做:显示后缀的情况下,直接重命名,把后缀.xlsx改成.rar或者.zip,然后解压出里面的图片文件 ...

  7. SparkStreaming使用checkpoint存在的问题及解决方案

    sparkstreaming关于偏移量的管理 在 Direct DStream初始化的时候,需要指定一个包含每个topic的每个分区的offset用于让Direct DStream从指定位置读取数据. ...

  8. 前端知识体系:JavaScript基础-一个原型继承例子

    function Elem(id) { this.elem = document.getElementById(id); } Elem.prototype.html = function(val){ ...

  9. hive优化实战

    2019年1月8日,付哥给了我一份公司以前的一份SQL优化方案文档.十分感谢.记录了许多在公司以前优化的案例. -------------------------------------------- ...

  10. Java的23种设计模式 <二>

    1.单例模式(Singleton Pattern) 定义:Ensure a class has only one instance, and provide a global point of acc ...