自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 技术分享 | 一步一步学测试平台开发-Vue restful请求

axios 是一个易用、简洁且高效的 HTTP 库。axios 主要是用于向后台发起请求,或者在请求中做更多可控的功能(比如拦截请求,请求伪造等)。它是一个第三方插件,所以使用之前要先安装。

2022-11-07 18:38:03 138 1

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

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

2022-09-06 18:37:38 184

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

在服务端自动化测试过程中,Form 请求代表请求过程中,请求体为表单类型。其特点为:数据量不大、数据层级不深的情况、使用键值对传递。Form 请求头中的content-type通常对应为application/x-www-form-urlencoded。碰到这种类型的接口,使用 Java 的 REST Assured 和 Python 的 Requests 均可解决。在 Python 版本中,可以使用 data 参数传输表单数据,data 参数以字典的形式,字典是以键值对的形式出现。...

2022-08-28 16:05:50 125

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

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

2022-08-28 16:05:17 1406

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

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

2022-08-28 16:04:11 221

转载 技术分享 | Web 控件定位与常见操作

在做 Web 自动化时,最根本的就是操作页面上的元素,首先要能找到这些元素,然后才能操作这些元素。工具或代码无法像测试人员一样用肉眼来分辨页面上的元素。那么要如何定位到这些元素,本章会介绍各种定位元素的方法。

2022-08-21 17:48:44 134

转载 技术分享 | web 控件的交互进阶

本文节选自霍格沃兹测试开发学社内部教材当需要模拟键盘或者鼠标操作时,Python需要使用 ActionChains 来处理,Java需要 Actions 来处理。常用模拟鼠标的行为,比如单击,双击,拖动等。当调用 ActionChains 或者 Actions 的方法时,会将所有操作按顺序存入队列,当调用 perform() 方法时,队列中的事件会依次执行。

2022-08-21 17:47:18 120

转载 技术分享 _ 网页 frame 与多窗口处理技术分享 | 网页 frame 与多窗口处理

从上面源代码中的说明可以看出,switch_to.window()需要提供一个 windows_name,可以是 name 也可以是 windows handle。这个方法是 Selenium 提供的直接从子 frame 切换到父 frame,可以使用在嵌套的 frame 框架中。Java 中切换句柄需要使用迭代器,如果有下一个句柄,则切换,没有则不切换,上面代码表示切换到最后一个窗口。元素有属性,浏览器的窗口其实也有属性的,浏览器窗口的属性用句柄(handle)来识别。如图可以看到iframe的标签。

2022-08-21 17:45:27 152

原创 技术分享 | 接口自动化测试如何搞定 json 响应断言?

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

2022-08-05 18:23:29 196

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

adb 是一种功能强大的命令行工具,可让 PC 端与 Android 设备进行通信。adb 命令可执行各种设备操作,例如安装和调试应用。

2022-08-05 18:21:22 68

原创 技术分享 | Appium 用例录制

下载地址:https://github.com/appium/appium-desktop/releases 1下载对应系统的 Appium 版本,安装完成之后,点击 “Start Server”,就启动了 Appium Server。在启动成功页面点击右上角的放大镜,进入到创建 Session 页面。配置好 desirecapability 信息之后,点击“Start Session”启动会话就展示出下面的页面。Appium Inspector 元素定位页面:1080×738 160 KB左侧为屏幕快照:

2022-06-09 14:28:35 99

原创 技术分享 | app自动化测试(Android)–元素定位方式与隐式等待

元素定位是 UI 自动化测试中最关键的一步,假如没有定位到元素,也就无法完成对页面的操作。那么在页面中如何定位到想要的元素,本小节讨论 Appium 元素定位方式。定位页面的元素有很多方式,比如可以通过 ID、accessibility_id、XPath 等方式进行元素定位,还可以使用 Android、iOS 工作引擎里面提供的定位方式。912×795 67.5 KB设置隐式等待后可以在规定的时间之内去动态的等待元素出现。假如设置了隐式等待时长为 10 秒,会在 10 秒之内不停的查找元素,如果第 2 秒就

2022-06-07 11:52:37 72

原创 技术分享 | Appium 用例录制

下载地址:Releases · appium/appium-desktop · GitHub下载对应系统的 Appium 版本,安装完成之后,点击 “Start Server”,就启动了 Appium Server。在启动成功页面点击右上角的放大镜,进入到创建 Session 页面。配置好 desirecapability 信息之后,点击“Start Session”启动会话就展示出下面的页面。Appium Inspector 元素定位页面:​左侧为屏幕快照:可以在左侧使用鼠标选择 UI 元素

2022-06-02 16:54:00 113

原创 技术分享 | 测试环境搭建

被测系统的环境搭建,是我们作为软件测试人员需要掌握的技能。被测系统AUT(Application Under Test) 常见的被测系统即需要被测试的 app,网页和后端服务。大致分为两个方面移动端测试和服务端测试,如下图所示:常见的被测系统类型部署方法部署方法包括脚本部署和容器部署。脚本部署是基于自动化脚本和自动化平台,通过自动化脚本完成对它的分发、配置和启动。容器部署基于容器镜像 Docker。脚本部署容器部署

2022-06-02 16:52:13 109

原创 技术分享 | web前端的HTML浅析

WEB 就是 World Wide Web 的缩写,称之为全球广域网,俗称 WWW。对于用户来说其实就是由多个网页组合在一起而形成一种服务。WEB 前端负责展示一个网站当中前台网页里的内容。而网页是由前端工程师使用 HTML 语言编写而成的一种文件,它里面会包含文字、图片、超链接、音频、视频等等这些内容。HTML 超文本标记语言(Hyper Text Markup Language)就是用来描述网页的一种计算机语言。

2022-05-31 17:35:00 75

原创 技术分享 | Web测试方法与技术之JavaScript 讲解

JavaScript 是脚本语言,是一种轻量级的编程语言,可以插入 HTML 页面的编程代码。插入 HTML 页面后,可由所有的现代浏览器执行。JavaScript 可以直接写入 HTML 输出流,也就是直接改变 HTML 的内容。也可以对事件做出反应,比如鼠标点击之后弹出弹窗,或者改变样式之类的。位置JavaScript 脚本必须位于 HTML 文档中<script>与</script>标签之间。<script>可被放置在 HTML 页面的&lt...

2022-05-30 15:47:17 67

原创 技术分享 | Web测试方法与技术之CSS讲解

CSS 就是层叠样式表(Cascading Style Sheets),定义如何显示 HTML 元素。HTML 元素的样式通常存储在层叠样式表中。为什么要使用CSS使用 CSS 可以定义 HTML 元素显示的样式,其实是为了解决内容与表现分离的问题。通过 CSS 可以让相同的一个页面在不同的浏览器当中呈现相同的样式。CSS组成CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明:1080×227 14.7 KB选择器通常是需要改变样式的 HTML 元素。每条声明由

2022-05-29 11:58:01 59

原创 技术分享 | WEB 端常见 Bug 解析

对于 WEB 产品来说,有一些常见的 Bug,本章节挑选一些比较典型的 Bug 进行举例介绍。UI Bug页面展示的时候,需要根据长度的边界值去设计用例进行验证。一般来说都会有超长内容的验证。看看文字超长之后,页面展示会不会出现问题。如果出现问题的话,可能就类似于这样,出现了滚动条,内容被遮盖了一部分。这是不想看到的场景,是需要进行修改的。比如可以折行展示,或者超出部分…,这些解决方案都是可以接受的。这一类问题一般会出现在兼容测试中。web 可能需要在各种

2022-05-29 11:56:51 579

原创 技术分享 | Web测试方法与技术实战演练

实战演练章节需要结合本章节所学知识点,完成对 web 产品的测试用例设计练习。测试人论坛发帖技术社区平台,主要为技术人员使用,技术人员作为普通用户可以在社区参与帖子的讨论,也可以发帖提出问题。社区具有分类、搜索、发帖、回帖等功能。此 web 系统的发帖功能需求为:前提条件:登录1、入口:点击导航栏右侧的【+新建话题】,底部弹出创建新话题控件。2、标题输入框:展示默认文案,点击输入标题内容,也可以粘贴链接。3、类别下拉列表:默认展示【类别…】,点击展示社区节点,支持搜索。需要选择节

2022-05-29 11:56:06 71

原创 技术分享 | Web自动化之Selenium安装

Web 应用程序的验收测试常常涉及一些手工任务,例如打开一个浏览器,并执行一个测试用例中所描述的操作。但是手工执行的任务容易出现人为的错误,也比较费时间。因此,将这些任务自动化,就可以消除人为因素。Selenium 可以帮助我们自动化完成验收测试,通过构建更严格的测试,从而使软件更为可靠也更易于维护。Selenium 支持 Web 浏览器的自动化,它提供一套测试函数,用于支持 Web 自动化测试。函数非常灵活,能够完成界面元素定位、窗口跳转、结果比较等功能。支持多种浏览器、多种编程语言(Java、C#、

2022-05-27 11:23:59 93

原创 技术分享 | SeleniumIDE用例录制

1、录制回放方式的稳定性和可靠性有限 2、只支持 Firefox、Chrome 3、对于复杂的页面逻辑其处理能力有限 环境准备Chrome 插件:https://chrome.google.com/webstore/detail/selenium-ide/mooikfkahbdckldjjndioackbalphokd1Firefox 插件:Selenium IDE – Get this Extension for 🦊 Firefox (en-US)1安装完成后,...

2022-05-27 11:23:15 55

原创 技术分享 | Selenium 测试用例编写

编写Selenium测试用例就是模拟用户在浏览器上的一系列操作,通过脚本来完成自动化测试。编写测试用例的优势: 开源,免费。 支持多种浏览器 IE,Firefox,Chrome,Safari。 支持多平台 Windows,Linux,Mac。 支持多语言 Python,Java,C#。 对 Web 支持良好。 简单,灵活。 支持分布式测试用例执行。 引入依赖引入依赖是为了调用 webdriver 中的方法来与浏览器进行交互以实现操

2022-05-26 10:24:05 245

原创 技术分享 | Web自动化之显式等待与隐式等待

等待就是当运行代码时,如果页面的渲染速度跟不上代码的运行速度,就需要人为的去限制代码执行的速度。在做 Web 自动化时,一般要等待页面元素加载完成后,才能执行操作,否则会报找不到元素等各种错误,这样就要求在有些场景下加上等待。最常见的有三种等待方式: 隐式等待 显式等待 强制等待 后面会一一介绍这三种模式的使用场景。隐式等待设置一个等待时间,轮询查找(默认 0.5 秒)元素是否出现,如果没出现就抛出异常。这也是最常见的等待方法。隐式等待的作用是全局的,是作用

2022-05-26 10:23:11 127

原创 技术分享 | Web 控件定位与常见操作

在做 Web 自动化时,最根本的就是操作页面上的元素,首先要能找到这些元素,然后才能操作这些元素。工具或代码无法像测试人员一样用肉眼来分辨页面上的元素。那么要如何定位到这些元素,本章会介绍各种定位元素的方法。实战演示Selenium 自带 id 定位,可以通过元素的 id 属性进行定位,比如下面的代码:Python 版本driver.find_element_by_id('kw')Java 版本driver.findElement(By.id("kw"));Seleniu

2022-05-26 10:22:16 107

原创 技术分享 | web 控件的交互进阶

当需要模拟键盘或者鼠标操作时,Python需要使用 ActionChains 来处理,Java需要 Actions 来处理。常用模拟鼠标的行为,比如单击,双击,拖动等。当调用 ActionChains 或者 Actions 的方法时,会将所有操作按顺序存入队列,当调用 perform() 方法时,队列中的事件会依次执行。

2022-05-25 14:02:33 73

原创 技术分享 | 网页 frame 与多窗口处理

知识点iframe解析1080×175 75.1 KB如图可以看到iframe的标签iframe 的多种切换方式HTML 代码示例<iframe src="1.html" id="hogwarts_id" name="hogwarts_name"></iframe>那么通过传入 id、name、index 以及 Selenium 的 WebElement 对象来切换 framePython 版本# index:传入整型的参数,从

2022-05-25 14:01:36 165

原创 技术分享 | Selenium多浏览器处理

实战演示Python 版本#导入依赖import osfrom selenium import webdriverdef test_browser(): #使用os模块的getenv方法来获取声明环境变量browser browser = os.getenv("browser").lower() #判断browser的值 if browser == "headless": driver = webdriver.PhantomJS()

2022-05-25 14:00:16 86

原创 技术分享 | 一文带你了解测试流程的体系

软件测试是软件质量保证的关键步骤。越早发现软件中存在的问题,修复问题的成本就越低,软件质量也就越高,软件发布后的维护费用越低。

2022-05-24 10:42:57 218

原创 技术分享 | 做为测试,掌握的测试技术体系

软件测试技术是软件开发过程中的一个重要组成部分,是贯穿整个软件开发生命周期、对软件产品(包括阶段性产品)进行验证和确认的活动过程。其目的是尽快尽早地发现在软件产品中所存在的各种问题,与用户需求、预先定义的不一致性。检查软件产品中可能存在的 Bug,并且编写缺陷报告,交于开发人员修改。软件测试人员的基本目标是发现软件中的错误。

2022-05-24 10:38:24 66

原创 技术分享 | 黑盒测试方法论—边界值

边界值分析法是一种很实用的黑盒测试用例方法,它具有很强的发现故障的能力。边界值分析法也是作为对等价类划分法的补充,测试用例来自等价类的边界。这个方法其实是在测试实践当中发现,Bug 往往出现在定义域或值域的边界上,而不是在其内部。为检测边界附近的处理专门设计测试用例,通常都会取得很好的测试效果。

2022-05-24 10:35:37 132

空空如也

空空如也

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

TA关注的人

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