自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(75)
  • 收藏
  • 关注

原创 接口测试框架实战 | 流程封装与基于加密接口的测试用例设计

首先需要明确在面对一个加密的响应结果,可以使用什么样的处理方式:如果知道使用的是哪个通用加密算法的话,可以自行解决。如果不了解对应的加密算法的话,可以让研发提供加解密的 lib。如果既不是通用加密算法、研发也无法提供加解密的 lib 的话,可以让加密方提供远程解析服务,这样算法仍然是保密的。本文主要讲的是在了解使用加密算法的情况下,如何处理这样的解密算法。但是封装的思路都是相通的,不管是面对哪种情况,都可以通过格式化的数据,指明数据的内容,并通过一层逻辑的封装,将加解密或者选择的协议封装进去。

2022-12-30 12:03:42 139

原创 接口测试实战| GET/POST 请求区别详解

请求行的 method 不同;POST 可以附加 body,可以支持 form、json、xml、binary等各种数据格式;从行业通用规范的角度来说,无状态变化的建议使用 GET 请求,数据的写入与状态建议用 POST 请求;

2022-12-30 11:59:59 237

原创 接口测试 Mock 实战(二) | 结合 jq 完成批量化的手工 Mock

2.1 jq 的概述与用途按惯例,先看官网对jq的解释:jq 官网地址:https://stedolan.github.io/jq/大概意思就是轻量灵活的Json处理命令行。用途说到这大概有些人有点感觉它能用来做什么了,为啥手工mock要使用jq了?没错!要用它来处理接口返回的json数据以达到mock的效果。2.2 jq 的下载安装Mac:Mac还是一如既往的简单(香~),装了Homebrew的话一条命令即可。

2022-12-30 11:59:40 177

原创 测试开发 | 接口协议之抓包分析 TCP 协议

TCP 协议是在传输层中,一种面向连接的、可靠的、基于字节流的传输层通信协议。

2022-12-30 11:56:07 109

原创 测试开发 | 持续交付-Jenkinsfile 语法

实现 Pipeline 功能的脚本语言叫做 Jenkinsfile,由 Groovy 语言实现。

2022-12-30 11:55:24 94

原创 测试开发 | 测试平台开发-前端开发之Vue.js 框架的使用

首先将 Vue.js 下载到本地,本章就以本地的 Vue.js 为例。在本地创建一个工作区即创建一个文件夹,使用 vscode 打开,将 Vue.js 放到工作区目录下。

2022-12-30 11:54:15 75

原创 测试开发 | 测试平台开发-前端开发之Vue.js 框架

1JavaScript (ES6) code snippets:包含 VSCode 的 ES6 语法中的 JavaScript 代码段。Vetur:VSCode 支持 VUE 的工具,有语法高亮、格式化、错误检查、自动完成等功能。(推荐)Auto Close Tag:自动添加 HTML/XML 结束标签。(推荐)Auto Rename Tag:自动重命名对应的 HTML/XML 标签。Highlight Matching Tag:突出显示匹配的开始和结束标签。

2022-12-30 11:52:13 122

原创 测试开发 | 持续交付-Blue Ocean 应用

Blue Ocean 提供了一套可视化操作界面来帮助创建、编辑 Pipeline 任务。

2022-12-30 11:48:58 64

原创 测试开发|移动端App自动化之触屏操作自动化

工作中我们经常需要对应用的页面进行手势操作,比如滑动、长按、拖动等,AppiumDriver 为我们提供一个模拟手势操作的辅助类 TouchAction,可以通过它对手机屏幕进行手势操作。

2022-12-30 11:40:56 69

原创 测试开发 | 接口自动化测试如何搞定 json 响应断言?

本文节选自霍格沃兹测试开发学社内部教材在之前的的章节已经简单介绍了如何断言接口的响应值,在实际工作过程中,json 的响应内容往往十分复杂,面对复杂的 json 响应体,主要通过 JSONPath 解决。JSONPath 提供了强大的 JSON 解析功能,使用它自带的类似 XPath 的语法,可以更便捷灵活的用来获取对应的 JSON 内容。

2022-12-30 11:39:46 50

原创 干货|app自动化测试之设备交互API详解

Appium 提供了很多系统操作,在测试 APP 过程中会有一些特殊场景,比如来电话、短信,横竖屏切换,安装/卸载 APP,手机上的键盘操作,录屏等功能。下面介绍几个常用的设备交互 API。

2022-12-26 18:07:23 66

原创 干货|接口测试必备技能-常见接口协议解析

在了解具体的协议之前,需要先了解 OSI 七层模型、TCP/IP 四层模型、五层体系结构这三种不同的网络模型。OSI 参考模型是一个在制定协调进程间通信标准时所使用的概念性框架,它并不是一个标准。TCP/IP 四层模型是网际网络的基础通信架构。常视为是简化的七层 OSI 模型。五层协议是 OSI 和 TCP/IP 的综合,实际应用还是 TCP/IP 的四层结构。TCP/IP 协议栈是对应 TCP/IP 四层模型所使用的具体的网络协议。

2022-12-26 18:06:58 109

原创 干货|app自动化测试之Capability 使用进阶

Capability 是一组键值对的集合(比如:“platformName”: “Android”)。Capability 主要用于通知 Appium 服务端建立 Session 需要的信息。客户端使用特定语言生成 Capabilities,最终会以 JSON 对象的形式发送给 Appium 服务端。

2022-12-26 18:05:51 64

原创 技术分享 | Spring Boot 集成 Swagger

Swagger UI 允许任何人(无论您是开发团队还是最终用户)都可以可视化 API 资源并与之交互,而无需任何实现逻辑。它是根据您的 OpenAPI(以前称为 Swagger)规范自动生成的,具有可视化文档,可简化后端实现和客户端使用。

2022-12-26 18:05:12 119

原创 干货|app自动化测试之模拟器控制

测试时需要用到测试设备,通常测试人员会选择使用模拟器进行自动化调试。模拟器分为原生模拟器与第三方模拟器。我们今天介绍的就是原生模拟器是 Android SDK 中自带的模拟器,可以通过 Android Studio 工具创建模拟器。

2022-12-26 18:05:06 72

原创 干货|app自动化测试之Appium问题分析及定位

使用 Appium 进行测试时,会产生大量日志,一旦运行过程中遇到报错,可以通过 Appium 服务端的日志以及客户端的日志分析排查问题。

2022-12-26 18:04:37 112

原创 干货|app自动化测试之Appium 原理 与 JsonWP 协议分析

想要使用 Appium 进行测试,那么就一定要先了解Appium的原理。Appium 不仅能够实现移动端的 JSONWP,并且延伸到了 Selenium 的 JSONWP,它能够控制不同移动设备的行为,例如通过会话安装和卸载 APP。

2022-12-26 18:03:36 85

原创 干货|app自动化测试之Appium 源码修改定制分析

Appium 是由 Node.js 来实现的 HTTP 服务,它并不是一套全新的框架,而是将现有的优秀的框架进行了集成,在 Selenium WebDriver 协议(JsonWireProtocol/Restful web service)的基础上增加了移动端的支持,使 Appium 满足多方面的需求。

2022-12-26 18:03:08 94

原创 技术分享 | Spring Boot 异常处理

Java 内部的异常类 Throwable 包括了 Exception 和 Error 两大类,所有的异常类都是 Object 对象。Error 是不可捕捉的异常,通俗的说就是由于 Java 内部 JVM 引起的不可预见的异常, Java 虚拟机会选择终止线程。如 OutOfMemoryError ,就是 Java 虚拟机运行过程中出现内存资源错误抛出的。Excetpion 异常是程序本身引起的,它又分为运行时异常 RuntimeException,和非运行时(编译时)IOException 等异常。

2022-12-26 18:02:34 281

原创 App测试时常用的adb命令你都掌握了哪些呢?

adb 全称为 Android Debug Bridge(Android 调试桥),是 Android SDK 中提供的用于管理 Android 模拟器或真机的工具。adb 是一种功能强大的命令行工具,可让 PC 端与 Android 设备进行通信。adb 命令可执行各种设备操作,例如安装和调试应用。

2022-12-26 18:00:35 96

原创 校招面试真题 | 你的期望薪资是多少?为什么?

所以,一般来说,hr给到的价格,是技术面面试官给的价格区间( ps : hr 也需要完成自己的招聘任务的,所以,hr 也希望能够替部门招到合适的人)。在去面试之前,我们需要了解我们面试的职位是什么,招聘 JD 上的薪资范围是多少,技术面试时面试官对你的印象怎么样(你自己面的怎样应该有数,需要平常心来对待),还有整个城市该行业的大概薪资范围,弄明白了这些,咱们谈薪资才会有理有据有重点。那么,有3K - 6K的岗位,还有15K - 30K 的岗位,那么,这个薪资范围是3K - 30K ,我该怎么谈呢?

2022-12-22 09:52:45 557

原创 技术分享 | 实战演练接口自动化如何处理 Form 请求?

在服务端自动化测试过程中,Form 请求代表请求过程中,请求体为表单类型。碰到这种类型的接口,使用 Java 的 REST Assured 和 Python 的 Requests 均可解决。在 Python 版本中,可以使用 data 参数传输表单数据,data 参数以字典的形式,字典是以键值对的形式出现。> > 霍格沃兹测试学院 TestingStudio。> > 霍格沃兹测试学院 TestingStudio。> > 霍格沃兹测试学院 TestingStudio。

2022-12-20 12:14:02 39

原创 技术分享 | 接口自动化测试中,文件上传该如何测试?

使用抓包工具抓取过程数据数据,可以清楚看到传递数据过程中,如果是 Java 版本,name 传递内容为 multiPart() 方法的第一个参数,在 Python 版本中为 files 参数传递的字典的 key 值,而 filename 不论是 Java 版本还是 Python 版本,传递的内容均为传递文件的文件名。在 Python 版本中,可以使用 files 参数上传文件,files 要求传递的参数内容为字典格式,key 值为上传的文件名,value 通常要求传递一个二进制模式的文件流。

2022-12-20 12:12:23 223

原创 技术分享 | 接口测试中,请求超时该怎么办?

A 发送请求,然后等待 B 的响应,同时开始超时计时,如果在超时时间内成功接收到响应,则结束等待和计时。如果到了超时时间还没有接收到响应,则结束等待同时此次通讯失败,这个过程叫做请求超时。通过 setParam() 设置超时时间,第一个参数为连接的类型,第二个参数为超时的最大时长,单位是 3000 毫秒。编写三条测试用例,在 test_two 测试用例中设置超时时间为 3 秒,超过 3s 还没有得到响应的话则抛出异常,然后正常执行后面的测试用例。> > 霍格沃兹测试学院 TestingStudio。

2022-12-20 12:11:29 161

原创 测试人生 | 二线城市年薪30W+,疫情之下涨薪超过100%,是怎么做到的?

课程内容很多,而且都是全新知识,刚开始我一度跟不上课程节奏,但是在保证直播课的情况下慢慢地补回来,这里提示下直播课第一次一定要跟着上课,回放的效果真没有现场的效果好。后来发现继续这样下去,自己的技能点太低,会被逐渐淘汰,没有竞争的能力。2.Shell常用命令:问到了基本的常用命令,比如性能相关的常用命令和指标的含义,咱们课程都是有的,只要好好刷录播,这些问题都难不倒你。4.性能测试:基本都会问到有没有做过性能测试,你们公司的性能测试指标有哪些,工作中如何去做的,用的什么工具等等,这块也是加分项。

2022-12-20 12:11:03 35

原创 技术分享 | 接口自动化测试,如何实现多套环境的自动化测试?

上面的方案虽然将 url 参数与用例实现了解耦,但是随着项目版本的快速迭代,接口会越来越多,在多个测试脚本文件中都要设置这个 envs 环境配置。使用一套接口测试脚本,通过切换域名地址配置,实现多套环境的自动化测试。针对以上的问题,可以把域名统一放在 env 配置信息中进行管理,然后将请求结构中的 url 地址替换成 env 配置文件中对应环境的 url 地址。因此,就需要将环境配置信息 envs 存储到 envs.yaml 文件中,然后在测试脚本中定义读取 yaml 信息的函数,在需要的地方调用即可。

2022-12-20 12:09:55 52

原创 技术分享 | 接口自动化测试如何进行认证?

在 HTTP 中,基本认证是允许使用 HTTP 协议的用户在请求时,提供用户名和密码的一种方式。,该凭证是用户和密码的组和的 base64 编码。碰到这种类型的接口,使用 Java 的 REST Assured 或者 Python 的 Requests 均可解决。方法完成用户名密码的验证,第一个参数输入用户名,第二个参数输入密码。> > 霍格沃兹测试学院 TestingStudio。> > 霍格沃兹测试学院 TestingStudio。本文节选自霍格沃兹测试开发学社内部教材。

2022-12-20 12:08:59 38

原创 技术分享 | 如何使用代理配置快速定位接口测试脚本问题?

本文节选自霍格沃兹测试开发学社内部教材在调试接口用例过程中,如果响应结果和预期结果不一致,则需要检查请求信息。通过代理获取自动化测试中的请求响应信息,对比与正常请求响应的区别,就能够更直观的排查请求错误,相当于编写代码时的 debug 功能。> > 霍格沃兹测试学院 TestingStudio在自动化测试中,不论是 Java 版本还是 Python 版本,均可以通过设置代理来监听自动化测试脚本的请求响应信息。通过proxies参数,监听请求与响应信息。

2022-12-20 12:06:07 24

原创 技术分享 | 接口自动化中如何完成接口加密与解密?

在接口自动化测试过程中,如果要验证加密接口响应值正确性的话,就必须使用正确的解密方式先对其实现解密,再完成验证。接下来对 httpbin 服务发起一个 base64 加密后的数据信息,httpbin 服务会将此加密数据再次返回,通过这个方式,模拟一个加密后的响应数据。解决方案:需要加密方提供远程解析服务,这样既解决了加解密问题,研发方也无需担心加解密算法暴露的问题。解决方案:使用通用的解密算法在获取加密响应信息后,对数据进行解密操作。针对加密后的响应数据,在断言之前将其解析,获取到正常的数据再进行断言。

2022-12-20 12:04:20 181

原创 技术分享 | Jenkins 持续集成体系介绍

Jenkins 是一个广泛用于持续构建的可视化 Web 工具,持续构建包括项目的自动化编译、打包、分发部署。Jenkins 可以很好的支持各种语言(比如:Java、 C#、 PHP 等)的项目构建,也完全兼容 Ant、Maven、Gradle 等多种第三方构建工具,同时跟 SVN、Git 能无缝集成,也支持直接与知名源代码托管网站,比如 Github 直接集成。安装插件的时候需要注意,因为插件都在海外,安装会非常缓慢,建议先跳过插件安装,在后续的系统配置中设置插件更新代理地址,来重新安装所需插件。

2022-12-20 12:03:42 509

原创 拿到8000元的火焰杯比赛奖金,感谢霍格沃兹测试开发学社

很幸运能够在决赛中获得二等奖,或许是情理之中,但也是意料之外。无论怎样,这次比赛都为我打开了未来择业中软件测试行业的大门,我深知这次获奖并不是终点,它仅是对我现阶段学习成果的一次检验,未来道路漫漫,我亦需不懈向前。比赛前我按照主办方给出的课程对于软件测试的理论及实践都进行了系统的学习,短短的几天之后便是第一次小试牛刀的机会——顺利通过了初赛;我是在一次偶然的机会中了解到火焰杯软件测试比赛,由于正值疫情封校期间,借此机会集中学习测试知识也不失为一个好的选择,抱着这样的初衷我报名参加了这次比赛。

2022-12-20 11:55:42 44

原创 技术分享 | 接口自动化实战演练及测试考察点

主要是商店管理人员使用的系统,管理人员可以通过系统对商品进行添加、修改和删除,帮助用户下单,查看订单,也可以对用户数据进行查看、管理,帮助用户修改个人信息。某股票软件主要有以下几个大的板块功能,问答板块,精华板块,交易板块,股票展示板块,首页板块,话题板块等。用户可以通过切换不同的板块实现不同的操作,除了查看各类型消息之外,也可以参与讨论,发帖,发问答等交互。实战演练章节需要结合技术分享接口测试章节的知识点(获取上方知识点可点击上方「接口测试」蓝色字体),完成对每种不同类型产品的接口自动化测试练习。

2022-12-19 11:10:38 113

原创 技术分享 | Jenkins job 机制该如何使用?

job 是 Jenkins 的一个执行计划,是一系列操作的集合,Jenkins 里的最常用的功能就是 job 的构建,即任务的构建。构建功能是Jenkins的核心功能,Jenkins任务具体的执行内容一般都由此配置进行控制,可以通过Shell脚本或者其他类型的脚本,定制化的完成任务。> 霍格沃兹测试学院 TestingStudio。> 霍格沃兹测试学院 TestingStudio。> 霍格沃兹测试学院 TestingStudio。本文节选自霍格沃兹测试开发学社内部教材。

2022-12-19 11:09:46 122

原创 技术分享 | Jenkins 如何参数化job ?

在部署测试环境的时候,同一个项目根据不同需求,要部署不同的分支进行测试,这个时候可以对输入的分支名称进行参数化来达到目的。> 霍格沃兹测试学院 TestingStudio。> 霍格沃兹测试学院 TestingStudio。本文节选自霍格沃兹测试开发学社内部教材。

2022-12-19 11:08:09 52

原创 技术分享 | Jenkins 节点该如何管理?

Jenkins 拥有分布式构建(在 Jenkins 的配置中叫做节点),分布式构建能够让同一套代码在不同的环境(如:Windows 和 Linux 系统)中编译、测试等。任意一种方式启动即可,节点启动成功,刷新节点页面,可以看到节点已经上线。> 霍格沃兹测试学院 TestingStudio。> 霍格沃兹测试学院 TestingStudio。> 霍格沃兹测试学院 TestingStudio。启动节点方式有 2 种,分别是。设置完成,点击保存。

2022-12-19 11:06:47 405

原创 技术分享 | 接口自动化测试中如何对xml 格式做断言验证?

通过这样的定位方式,也可以获取到想要的响应内容。ElementTree 可以将整个 XML 文档转化为树,对整个 XML 文档的交互(读取,写入,查找元素),一般是在 ElementTree 层面进行的。SAX 方式:它是一个用于处理 XML 事件驱动的模型,它逐行扫描文档,一边扫描一边解析,对于大型文档的解析拥有巨大优势,尽管不是 W3C 标准,但它却得到了广泛认可。DOM 方式:它是文档对象模型,是 W3C 组织推荐的标准编程接口,它将 XML 数据在内存中解析成一个树,通过对树的操作来操作 XML。

2022-12-19 11:06:01 61

原创 技术分享 | 接口测试中如何使用Json 来进行数据交互 ?

碰到这种类型的接口,使用 Java 的 REST Assured 或者 Python 的 Requests 均可解决。在 Java 中,使用contentType()方法添加请求头信息,使用body()方法添加请求体信息。在 Python 中,使用 json 关键字参数发送 json 请求并传递请求体信息。json 是一种轻量级的传输数据格式,用于数据交互。json 请求类型的请求头中的。> 霍格沃兹测试学院 TestingStudio。> 霍格沃兹测试学院 TestingStudio。

2022-12-19 11:04:32 95

原创 技术分享 | 如何安装Jenkins 插件?

Jenkins 强大的原因之一就是插件众多,插件帮助 Jenkins 丰富自身原有的功能。> 霍格沃兹测试学院 TestingStudio。> 霍格沃兹测试学院 TestingStudio。本文节选自霍格沃兹测试开发学社内部教材。

2022-12-19 11:03:45 90

原创 使用Mock技术帮助提升测试效率的小tips,你知道几个?

先不要着急知道答案,大家可以看一下上面的这四个过程,其实都是我们的被测模块在向某一个依赖环境(第三方服务、后端接口、硬件设备、其他服务)发送请求的过程中,依赖环境出现了问题,导致影响我们的测试效率。其实要实现上面这个测试需求是非常简单的,只要善用Mock工具,了解Mock的实现与配置原理,就能够轻松完成雪球股票界面的列表展示颜色是否会跟随股价的涨跌停进行变化,从而提升测试效率。这些都是我们在平时测试过程中,经常碰到的阻塞测试进度的问题,那有什么技术手段,可以解决这些问题,提升我们的测试效率呢?

2022-12-19 11:02:51 170

原创 技术分享 | Jenkins 多任务关联

当有多个 Jenkins job 时,job 的执行需要按照先后顺序去执行,这个过程就是 Jenkins 的多任务关联。通常用于项目的编译、打包、执行冒烟、执行项目 case 多任务协助的场景中。多任务关联的使用场景是有先后次序关系的任务,例如 部署环境任务 → 验收测试任务。而任务启动的触发条件为其他任务的运行结果,比如。

2022-12-19 11:01:08 333

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除