前言:

最近领导想了个需求,想把目前组内在linux平台上执行的自动化脚本搞成可视化,如果是web站点相关日志可视化倒是简单了,ELK就是不错的选择,大部分可视化项目这种的,可以做的开起来很炫。

我们这边是自己写的脚本,测试网卡的自动化,日志的格式并不是那么符合web日志的格式。

选择方案:

Reportportal 可视化项目地址:

reportportal/reportportal: Main Repository. Report Portal starts here - see readme below. (github.com)

比较符合我的想法,重点在于可视化执行过程,可视化结果分析,灵活自定义图表。

过程:

1. 把linux执行的命令通过robotframework的sshlibrary执行,相当于对之前人写的脚本加了个壳子,把日志格式标准化成robotframework的形式。

1.1我把robotframework安装在windows 10上的,python 3.8

具体过程我就不写了,网上很多,这里提供一篇文章供参考:

Robot Framework 使用【1】-- 基于Python3.7 + RIDE 最新版本搭建 - 蓝寅 - 博客园 (cnblogs.com)

部分lib版本参考:(都比较新)

D:\>pip list
Package Version
--------------------------- ---------
paramiko 2.11.0
pip 21.1.1
Pypubsub 4.0.3
pywin32 304
reportportal-client 5.2.6
robotframework 3.2.1
robotframework-datadriver 1.6.1
robotframework-reportportal 5.3.1
robotframework-ride 2.0b2
robotframework-sshlibrary 3.8.0
wxPython 4.0.7

2. 第一步中可以看到 有reportportal-client 和 robotframework-reportportal先关的lib,对的,这是后面集成reportportal安装的

2.1部署reportprotal web站点,推荐博客:ReportPortal 在python下的应用介绍之----ReportPortal部署 - Believer007 - 博客园 (cnblogs.com)

推荐部署方式docker,因为需要装的软件太多了,采用docker的方式部署建议磁盘100G以上空间,不然部分docker起不来,web网站功能也不全。

安装方式在上面的博客里面写的很详细了,如下:

3. .安装Docker

管理员登录centos,输入以下命令

yum install -y yum-utils
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum-config-manager --enable docker-ce-nightly

安装docker

yum install docker-ce docker-ce-cli containerd.io

启动docker

systemctl start docker

替换源

新建文件 /etc/docker/daemon.json

{
"registry-mirrors": ["https://registry.docker-cn.com"]
}

重启docker

systemctl daemon-reload
systemctl restart docker.service

4.安装docker compose

下载文件

curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

变更权限

chmod +x /usr/local/bin/docker-compose

查看是否安装成功

docker-compose --version

5. 下载reportportal的yml文件

根据管网在这下,但是由于国外墙的原因下不了(有国内源可以找找)

curl -LO https://raw.githubusercontent.com/reportportal/reportportal/master/docker-compose.yml

6.设置elasticSearch配置

1
2
3
mkdir -p data/elasticsearch
chmod 777 data/elasticsearch
chgrp 1000 data/elasticsearch

7.安装

docker-compose -p reportportal up -d --force-recreate

装的过程比较坎坷,可能会由于网络原因找不到。

8.验证(版本算是比较新的)

登录地址

http://虚拟机IP:8080

默认有登录用户名和密码:

Default User: default\1q2w3e
Administrator: superadmin\erebus

9. 与 robotframework 集成

reportportal 官方提供了源码和 操作方法:reportportal/agent-Python-RobotFramework (github.com)

我再详细说一下吧:

在robotframework所在的 window10 平台上安装 robotframework 的第三方lib;

pip install robotframework
pip install robotframework-reportportal

当然还需要安装reportportal 的client,用来传 RF的日志到reportportal

reportportal/client-Python: A common client library for Python-based agents (github.com)

pip install reportportal-client

到此完成所有的安装

10. robotframework 联动 reportportal

在 RF run界面的 Arguments里面添加reportportal的listener

例如:

--listener robotframework_reportportal.listener
--variable RP_UUID:"your_user_uuid"
--variable RP_ENDPOINT:"your_reportportal_url"
--variable RP_LAUNCH:"launch_name"
--variable RP_PROJECT:"reportportal_project_name"

解释上上面的东西:

登录 reportportal网站后,点击进入 USER PROFILE,参考这里填写,一般可以直接复制黏贴

11. 到这里就完成配置了,运行一下用例吧:

就可以在Launches 的界面看到运行的 测试项目了,可以实时看到运行状态,运行结果

12. 日志结果分析,bug标记,jira集成

进入失败的日志,可以看到日志的具体信息,对问题进行记录

最终可以在dashborad界面自定义创建图表,展示本次测试结果统计:

总结:

该项目可以和很多测试框架集成,且集成简单,使用方便,如果有需要对测试报告进行二次加工的小伙伴可以该方案。reportportal开源社区比较活跃,真遇到bug很快有人帮助解决。

reportportal 集成 robotframework 自动化执行及结果可视化的更多相关文章

  1. .NET持续集成与自动化部署之路第一篇——半天搭建你的Jenkins持续集成与自动化部署系统

    .NET持续集成与自动化部署之路第一篇(半天搭建你的Jenkins持续集成与自动化部署系统) 前言     相信每一位程序员都经历过深夜加班上线的痛苦!而作为一个加班上线如家常便饭的码农,更是深感其痛 ...

  2. NET持续集成与自动化部署

    https://www.cnblogs.com/hunternet/p/9590287.html 相信每一位程序员都经历过深夜加班上线的痛苦!而作为一个加班上线如家常便饭的码农,更是深感其痛.由于我们 ...

  3. 从零学习基于Python的RobotFramework自动化

    从零学习基于Python的RobotFramework自动化 一.        Python基础 1)      版本差异 版本 编码 语法 其他 2.X ASCII try: raise Type ...

  4. .NET 半天搭建Jenkins持续集成与自动化部署系统

    前言 相信每一位程序员都经历过深夜加班上线的痛苦!而作为一个加班上线如家常便饭的码农,更是深感其痛.由于我们所做的系统业务复杂,系统庞大,设计到多个系统之间的合作,而核心系统更是采用分布式系统架构,由 ...

  5. 【转载】soapui基于持续集成工具自动化运行的调研姿势

    soapui中的testrunner.bat调研姿势,用于自动化测试副标题:soapui基于持续集成工具自动化运行的调研姿势 各位亲爱的同仁们,大家好吗?最近项目在搞持续集成工具,我们的测试用例都是基 ...

  6. robotframework自动化系列:随机下拉框

    robotframework自动化系列:随机下拉框 随着项目自动化不断推进,在下拉框定位的时候出现些问题,每次下拉框选择都是相同的下拉选项,如果想每次选择的选项不一样,该如何实现呢,查找了很多资料,没 ...

  7. Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(三):搭建jenkins集群环境

    写在前面 大家可以看到本文的配图,左边是jenkins单机环境,右边是jenkins集群.个中区别,不言而喻,形象生动. 前面我分别介绍了.net core 程序的多种部署方式(无绝对孰优孰劣): 1 ...

  8. .NET持续集成与自动化部署之路第二篇——使用NuGet.Server搭建公司内部的Nuget(包)管理器

    使用NuGet.Server搭建公司内部的Nuget(包)管理器 前言     Nuget是一个.NET平台下的开源的项目,它是Visual Studio的扩展.在使用Visual Studio开发基 ...

  9. .NET持续集成与自动化部署之路第三篇——测试环境到生产环境的一键部署策略(Windows)

    Jenkins测试环境到生产环境的一键部署策略(Windows) 一.前言     前面我们已经初步实现了开发集成环境.测试环境的持续集成(自动化构建.自动化测试.自动化部署).但生产环境自动化部署迟 ...

随机推荐

  1. SVN:取消对代码的修改

    取消对代码的修改分为两种情况: 第一种情况:改动没有被提交(commit). 这种情况下,使用svnrevert就能取消之前的修改. svn revert用法如下: #svn revert[-R] s ...

  2. Luogu1064 金明的预算方案 (有依赖的背包)

    枚举多个状态 #include <iostream> #include <cstdio> #include <cstring> #include <algor ...

  3. java-注释、API之字符串(String)

    /** * 文档注释只定义在三个地方 : 类.常量.方法上 * 在类上定义文档注释用来说这个类设计及其解决问题等相关描述信息 * @author 作者 * @version  1.0 21/08/17 ...

  4. GoogleTest环境配置以及应用

    1 GoogleTest源码编译: GoogleTest代码仓库URL: https://github.com/google/googletest.git 下载源代码: git clone --bra ...

  5. centos7.6内核之cfs_bandwidth下的distribute_cfs_runtime hard lockup

    接到业务兄弟报障,出现多例crash,堆栈大多数如下: KERNEL: /usr/lib/debug/lib/modules/3.10.0-957.27.2.el7.x86_64/vmlinuxDUM ...

  6. Tomcat 10无法使用javax包

    可以导入新的 jakarta包 <dependencies><!--servlet依赖--> <dependency> <groupId>jakarta ...

  7. Javascript之异步循环打印这道小题

    这道题,我相信很多前端从业者都知道,它本质上来说并不复杂,但是却可以有很深远的扩展,最终核心的主题其实就是异步的遍历,其中对于题目的初级解法,还涉及到一些作用域的知识.那么我们以最容易理解的解法入手, ...

  8. 项目实践2:使用html和CSS实现图片轮播

    好家伙, 使用html和CSS实现简单的图片切换(轮播图) 来自:(7条消息) 使用CSS实现简单的图片切换(轮播图)_LexingtonCV16的博客-CSDN博客_css实现图片切换 1.首先创建 ...

  9. class 中的 构造方法、static代码块、私有/公有/静态/实例属性、继承 ( extends、constructor、super()、static、super.prop、#prop、get、set )

     part 1         /**          * << class 中的 static 代码块与 super.prop 的使用          *          * - ...

  10. KFS邮件自动告警-数据比对-数据修复配置方法

    一.告警机制 用户可以通过配置告警机制,在比对完成和节点报错时接收到邮件告警. 告警机制共包含3个方面: 1. 告警配置 2. 用户订阅 3. 告警历史 KFS邮箱分两个部分,一个是接收告警信息的邮箱 ...