python接口测试之测试报告

news2025/1/13 8:02:15

在本文章中,主要使用jenkins和编写的自动化测试代码,来生成漂亮的测试报告,关于什么是CI这些我就不详细的介绍了,这里我们主要是实战为主。

首先搭建java的环境,这个这里不做介绍。搭建好java的环境后,在https://jenkins.io/上下载jenkins,以及在https://jenkins.io/上下载tomcat,都下载完成后,进行解压,把jenkins.war放在tomcat的webapps的目录下,在tomcat的bin目录下,点击start.bat启动tomcat,启动后,在浏览器中访问http://localhost:8080/jenkins,首次使用会看到需要输入密码,在windows环境下,密码是在C:\Users\Administrator\.jenkins\secrets目录下,打开initialAdminPassword文件,复制该内容,把它copy到jenkins的密码输入,然后下来选择安装插件,关于插件这里就不详细的说明了。

这里我们使用allure来生成测试报告,我们知道,在python的自动化测试中,常用生成测试报告使用的是HTMLTestRunner库,但是该库生成的测试报告不是很漂亮,我们使用allure可以生成很直观的测试报告而且测试报告比较渲,下面就来详细的说明如何使用它来生成很酷的测试报告步骤。

首先需要在jenkins中安装插件Allure Jenkins Plugin,在jenkins的插件管理中,直接搜索allure可以搜索到,然后选择安装就可以了。安装该插件成功后,点击jenkins的“系统管理”,在系统管理中,点击Global Tool Configuration,在Global Tool Configuration的界面安装allure,见截图:

点击“Allure Commandline安装...”,会出现如下的界面,见截图:

选择好后,点击save保存成功。下来我们需要安装pytest,安装的命令为:

pip install pytest pip install pytest-allure-adaptor

在线安装成功后,在cmd的命令中输入pytest,如果显示信息如下,表示安装OK,见截图:

OK,下面我们来编写代码,来进行测试,比如编写如下的测试代码,见编写后的源码:

#!/usr/bin/env python 
#-*-coding:utf-8-*-

import  unittest

def div(a,b):
    return a-b

class DivTest(unittest.TestCase):
    def test_div_001(self):
        self.assertEqual(div(3,2),1)

    def test_div_002(self):
        self.assertEqual(div(3,3),0)

    def test_div_003(self):
        self.assertEqual(abs(div(2,3)),1) 

下面我们通过pytest来执行该文件,见执行后的结果信息,见如下的截图:

下面我们结合jenkins,pytest,allure来生成测试报告,在jenekins的系统设置中指定allure的测试报告目录,见配置的截图:

我们创建新的job,在构建步骤中选择windows batch command,填写执行的命令,见截图:

在构建后操作选择Allure Report,见截图:

点击保存,刚才创建的 job是blog,创建成功后,在项目详情页面,可以看到显示allure测试报告的图标,我们立即构建后,见构建后成功后的部分打印出的信息

C:\Users\Administrator\.jenkins\workspace\blog\report -c -o C:\Users\Administrator\.jenkins\workspace\blog\allure-report
Report successfully generated to C:\Users\Administrator\.jenkins\workspace\blog\allure-report
Allure report was successfully generated.
Creating artifact for the build.
Artifact was added to the build.
Finished: SUCCESS

见blog的job的详情页面,见截图:

见点击Allure Report后的测试报告,见截图:

OK,测试报告就总结到这里

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/601769.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python:Python编程:从入门到实践__超清版:Python标准库:线程

Python线程与安全 实现线程安全有多重方式,常见的包括:锁,条件变量,原子操作,线程本地存储等。 💚 1. 锁2. 条件变量3. 通过 join 阻塞当前线程4. 采用 sleep 来休眠一段时间5. 原子操作5.1 使用 threading…

【I2C】Linux I2C子系统分析

文章目录 一、I2C体系架构二、主要的结构体1. i2c_adapter2. i2c_algorithm3. i2c_driver4. i2c_client4.1 方式一:通过I2C bus number静态方式来创建4.2 方式二:通过Device Tree来创建4.3 方式三:直接通过i2c_new_device来创建4.3 方式四&am…

openEuler22.03制作openstack平台使用的镜像

系列文章目录 第一章 openEuler22.03制作openstack平台使用的镜像 文章目录 系列文章目录前言一、virt-manager上的准备工作1、网卡类型切换为virtio2、IDE驱动设置成Virtio3、Display设置成vnc3、虚拟机系统分区 二、安装普通工具包三、安装云化工具包1、安装工具包2、修改配…

数字化转型,企业为什么要转型?如何转型?

数字化转型是利用数字化技术(例如云计算、大数据、人工智能、物联网、区块链等)和能力来驱动组织商业模式创新和商业生态系统重构的途径和方法即是数字化转型。其目的是实现企业业务的转型、创新、增长。 核心强调了两点,其一是数字化技术的应…

每日一练 | 华为认证真题练习Day51

1、如下图所示,IPSec传输模式中AH的头部应该插入到以下哪个位置? A. 1 B. 2 C. 3 D. 4 2、以下哪种远程登录方式最安全? A. Telnet B. Stelnet v100 C. Stelnet v2 D. Stelnet v1 3、以下业务模块的ACL默认动作为permit的是&#xff1…

玩转 ChatGPT,看这条就够了,Prompt 最全中文合集

Prompt 最全中文合集 玩转 ChatGPT,看这条就够了! 🚀 简化流程:ChatGPT Shortcut 提供了快捷指令表,可以快速筛选和搜索适用于不同场景的提示词,帮助用户简化使用流程。 💻 提高生产力&#…

CSDN打出各种数学符号和数学公式

目录 1、基本四则运算2、指数对数3、根号、省略号、向量4、大(小)于等于号5、特殊符号、希腊字母符号6、累加累乘7、矩阵8、更改公式中的颜色 我们在用CSDN打出各种数学符号和数学公式时,需要学习一些关于LaTex的语法,在此做一个记…

java数组学习

一、数组的概述 1.数组的理解:数组(Array),是多个相同类型数据按一定顺序排列的集合, 并使用一个名字命名,并通过编号的方式对这些数据进行统一管理。 2.数组相关的概念: >数组名 >元素 >角标、下标、索引 >数组的长度:元素…

联通云数据库CUDB:基于openGauss打造新一代自主创新云原生数据库

总体概述 联通云彰显央企担当,围绕国家对信息技术基础软件的政策要求,开展数据库自主研发。在openGauss开源社区版软件基础上,聚焦政企市场,坚持内核创新,完善工具生态,基于海量云存储能力、存算分离架构…

React中的懒加载以及在Ice中实践

您好,如果喜欢我的文章,可以关注我的公众号「量子前端」,将不定期关注推送前端好文~ 前言 对于页面性能优化,组件懒加载是个比较不错的方案,并且在整个项目打包后,如果未做代码分割,构建出的文…

代理ip的优势、用途及注意事项

随着互联网的高速发展,代理ip的名气和地位也随着水涨船高。那么是什么让它们被我们所知悉的呢?下面我们就代理ip的优势、用途和注意事项来分析一下它为什么能迎合着互联网的发展而壮大自己的。 一、优势 每一个脱颖而出的产品必然有它的优势,…

Axure教程—菜单(中继器)

本文将教大家如何用AXURE中的中继器制作菜单(自动折叠其他菜单) 一、效果介绍 如图: 预览地址:https://iuek50.axshare.com 下载地址:https://download.csdn.net/download/weixin_43516258/87854640?spm1001.2014.30…

知识图谱简介

什么是知识图谱? 参考:知识图谱1、知识图谱2 本质上,知识图谱主要目标是用来描述真实世界中存在的各种实体和概念,以及他们之间的关系,因此可以认为是一种语义网络。 主要作用:通过数据,建立图…

智能自动化助力业务升级:探究低代码开发和业务流程自动化

当我们开始探索业务流程自动化(BPA)时,就证明我们已经真正进入到企业数字化转型的核心领域了——企业越来越关注如何通过创新技术来提高效率、降低成本并实现业务流程的自动化。在这个背景下,低代码开发平台和业务流程自动化成为了…

vue 滚动加载

在 Vue中,如果一个组件是一个 button,那就可以直接调用 input ()方法,将组件的 button放入到v-ui中。 然而在v-ui中,一个组件可能不止一个 button,而这些 button还需要从浏览器加载到 DOM树中。…

一个投喂ChatGPT大内容的小技巧

大家好,我是五竹。心血来潮整理了一份手册:《ChatGPT学习指南》并且将为小白们持续更新和GPT相关的资源和教程,专注于打造一部最好的GPT入门指南,欢迎大家转发、收藏、点赞支持!谨防失联! 至今还有很多人都…

渗透测试适合小白学习吗会让人感觉到无聊吗?

渗透测试是一项复杂的技能,需要具备扎实的计算机知识,对网络和系统安全有深入的理解和认识。对于初学者来说,建议先学习计算机网络、操作系统、编程语言等相关基础知识,了解渗透测试的概念、流程和常用工具。同时,需要…

HMR API及其原理

很久之前,遇到一个面试题:【在代码变更之后,如何实时看到更新后的页面效果呢?】 在传统的方案中,我们可以通过 live reload 也就是自动刷新页面的方式来解决的,不过随着前端工程的日益庞大,开发…

CSS3+HTML5

1、HTML5 2、HTML5标签 链接标签 <a href"https://www.baidu.com">打开百度&#xff0c;你就知道&#xff01;</a> 链接的属性与作用 属性1&#xff1a;href 作用&#xff1a;用于指定链接目标的url地址&#xff0c;当为标签应用href属性时…

(2022,DynamicD)使用动态鉴别器改进 GAN

Improving GANs with A Dynamic Discriminator 公众号&#xff1a;EDPJ 目录 0. 摘要 1. 简介 2. 相关工作 3. 方法 3.1 基础 3.2 动态鉴别器 3.3 针对不同数据体系的两种方案 4. 实验 4.1 设置 4.2 实证研究 4.3 与现有方法的比较 4.4 DynamicD 的泛化性和兼…