前言 当我们的 jenkins 服务所在的机器无法在外部访问,或者端口不通的时候,我们想要查看 jenkins 上的项目情况就很难,这个时候我们怎么办呢?我推荐给你们一种最简单的工具。 jenkinsclient jenkinsclient 是一个 python 的第三方包,安装简单,使用方便,是优秀的 jenkins 第三方客户端工具。 安装 p…
背景 近期,兄弟部门在部署某环境的时候发现自己的业务容器莫名的 unavailable,这是怎么回事呢?今天我们一起来分析分析。 谁吃了 IO? 问题分析 运维同事登录到虚拟机看到虚拟机的负载很高,这是怎么回事呢?运维同事发了 Top 的截图给我,分析后发现这台虚拟机的部分进程发生了 IO 等待,所以我们怀疑是 IO 性能受限。 安装工具 目前虚机…
1、前言 之前,我写过一篇博客迁移之路,里面就有介绍我曾经使用Hexo、Hugo、Docsify等建立过个人站点。最近有同学咨询我相关工具的使用方法,为了方便大家,我们今天一起来使用Hugo打造一个清爽的个人博客。 Hugo是一个使用二进制就能实现博客项目构建的工具,使用起来非常的方便。 2、快速开始 2.1、安装Hugo 首先我们登陆Github…
前言 相信你和我一样,在日常的工作中,requests 库被广泛使用。今天我要为你介绍一款号称下一代全功能的 HTTP 客户端:httpx。 什么是 httpx httpx 是 Python3 的全功能客户端,支持同步&异步 API,同时支持 HTTP/1.1 和 HTTP/2。 相比其他 HTTP 库,httpx 具有更加易用的接口,更加…
前言 相信你和我一样,在日常的工作中,requests 库被广泛使用。今天我要为你介绍一款号称下一代全功能的 HTTP 客户端:httpx。 什么是 httpx httpx 是 Python3 的全功能客户端,支持同步&异步 API,同时支持 HTTP/1.1 和 HTTP/2。 相比其他 HTTP 库,httpx 具有更加易用的接口,更加…
数据驱动概览 为什么要用数据驱动 举个简单例子,当我们在测试一个输入框的功能时,可能需要输入不同的参数,此时,我们不需要设计多个用例,而只需要将输入值参数化,将不同的参数作为一个列表通过数据驱动的方式进行加载即可。 httprunner 的数据驱动 通过上篇文章,我们已经知道 httprunner 的数据驱动需要在 testsuite 中使用关键字…
何为用例分层? 在自动化测试领域,自动化测试用例的可维护性是极其重要的因素,直接关系到自动化测试能否持续有效地在项目中开展。 概括来说,测试用例分层机制的核心是将接口定义、测试步骤、测试用例、测试场景进行分离,单独进行描述和维护,从而尽可能地减少自动化测试用例的维护成本。 逻辑关系图如下所示: 图片摘自 httprunner 官方网站。 几个核心概…
为什么要用环境变量 在自动化测试中,有时需要借助环境变量实现某些特定的目的,常见的场景包括: 切换测试环境 切换测试配置 存储敏感数据(从信息安全的角度出发) 设置环境变量 Linux 中 使用 export 命令 $ export UserName=admin $ echo $UserName admin $ export Password=12…
什么是 debugtalk 在前面的文章中我们已经介绍过 httprunner 的项目结构。debugtalk.py 是用来表示项目根目录的,同时我们也能在其中自定义一些方法供 api 和 case 使用。 debugtalk 用于 hook 详情查看:HttpRunner-03-hook debugtalk 用于数据传递 前面的 HttpRunn…
什么是 extract extract 顾名思义,我们就可以猜到其实用来做数据提取和引用的。 使用场景 通常,测试框架中都有获取数据并且将其存储到变量的机制。httprunner 也不例外,extract 就是用来提取变量并且供后续步骤使用。 在接口测试中,大多数接口都是需要鉴权的,而我们不可能在每个测试步骤,甚至测试用例中重复进行 token 的…