摘要: 在被测接口并没有明确的接口文档给出时,我们需要借助抓包工具来帮助测试,利用抓包工具我们几乎可以获得接口文档中能给你的一切。常见的抓包工具有Charles和Fiddler, Fiddler只能用在Windows平台, 而Charles可用于Windows, Mac, IOS和Android多平台。下面 阅读全文
posted @ 2020-04-16 21:32 gtea 阅读(822) 评论(0) 推荐(0) 编辑
摘要: 一、什么是接口 接口测试主要用于外部系统与系统之间以及内部各个子系统之间的交互点,定义特定的交互点,然后通过这些交互点来,通过一些特殊的规则也就是协议,来进行数据之间的交互。 二、接口的类型 接口一般分为两种: 1、程序内部的接口 程序内部的接口:方法与方法之间,模块与模块之间的交互,程序内部抛出的 阅读全文
posted @ 2020-04-16 21:31 gtea 阅读(301) 评论(0) 推荐(1) 编辑
摘要: 一、什么是白盒测试 白盒测试是一种测试策略,这种策略允许我们检查程序的内部结构,对程序的逻辑结构进行检查,从中获取测试数据。白盒测试的对象基本是源程序,所以它又称为结构测试或逻辑驱动测试,白盒测试方法一般分为静态测试和动态测试。 二、如何去做白盒测试 网上很多介绍白盒测试的文章会提到白盒测试的方法有 阅读全文
posted @ 2020-04-16 21:28 gtea 阅读(934) 评论(0) 推荐(1) 编辑
摘要: 一、什么是Mock服务/工具 在测试过程中,对于一些不容易构造/获取的对象,创建一个 Mock 对象来模拟对象的服务/工具。比如:在测试过程中,手工构造的数据不能返回我想要的结果,从而导致程序的后续处理走不到我们期待的分支,最终造成测试的不充分。当然,Mock 服务除了有这种能力以外,还有其他优点: 阅读全文
posted @ 2020-04-16 21:27 gtea 阅读(882) 评论(0) 推荐(0) 编辑
摘要: 一、质量保障 先引用一段 百度百科 上对软件质量保障的解释:软件质量保障是建立一套有计划,系统的方法,来向管理层保证拟定出的标准、步骤、实践和方法能够正确地被项目所采用。软件质量保证的目的是使软件过程对于管理人员来说是可见的。它通过对软件产品和活动进行评审和审计来验证软件是合乎标准的。软件质量保障人 阅读全文
posted @ 2020-04-16 21:25 gtea 阅读(1110) 评论(0) 推荐(0) 编辑
摘要: Appium 初始化配置信息(Desired Capabilities) Desired Capabilities实际上就是一个字典,它主要用于向Appium Server提供初始化配置参数,如:想要测试的系统是Android还是IOS,测试哪款软件,软件的入口是哪里等。 1 from appium 阅读全文
posted @ 2020-04-16 21:23 gtea 阅读(657) 评论(0) 推荐(0) 编辑
摘要: 1、ID Android Android的resource-id对应ID定位方式,可以通过index来获取需要的元素(从0开始查找dom树中的同名resource-id属性)。使用appium-desktop来获取元素时,id和resource-id是相同的,如果只有resource-id,可能存在 阅读全文
posted @ 2020-04-16 21:22 gtea 阅读(348) 评论(0) 推荐(0) 编辑
摘要: 转自:http://www.imdsx.cn/ 手机App分为两大类,原生App(Native App)和混合APP(Hybrid App) 原生App(Native App) 原生App实际就是我们所常见的传统App开发模式,云端数据存储+App应用客户端。App应用客户端,包含了所有的UI元素、 阅读全文
posted @ 2020-04-16 21:21 gtea 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 转自:http://www.imdsx.cn/ 一、selenium中如何判断元素是否存在? expected_conditions模块提供了多种校验方式,我常用的一种是presence_of_element_located(判断某个元素是否被加到了dom树里,并不代表该元素一定可见,如果定位到就返 阅读全文
posted @ 2020-04-16 21:20 gtea 阅读(206) 评论(0) 推荐(0) 编辑
摘要: WebDriverApi接口详解 浏览器操作 1 driver.back() # 后退 2 driver.forward() # 前进 3 driver.refresh() # 刷新 窗口操作 1 driver.get_window_size() # 获取浏览器大小 2 driver.set_win 阅读全文
posted @ 2020-04-16 21:17 gtea 阅读(321) 评论(0) 推荐(0) 编辑
摘要: 在UI自动化测试中,必然会遇到环境不稳定,网络慢的情况,这时如果你不做任何处理的话,代码会由于没有找到元素,而报错。这时我们就要用到wait(等待),而在Selenium中,我们可以用到一共三种等待,每一种等待都有自己的优点或缺点,我们需要选择最优的等待方式。下面我们来介绍三种等待方式。 第一种:固 阅读全文
posted @ 2020-04-16 21:13 gtea 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 18种定位 Selenium的定位方式一共有18种,单数8种,复数8种,最后两种是前面这16种的底层封装 单数形式8种 1 # 1、id定位 2 al = driver.find_element_by_id('i1') 3 al.send_keys('id定位') 4 5 # 2、class定位 6 阅读全文
posted @ 2020-04-16 21:12 gtea 阅读(346) 评论(0) 推荐(0) 编辑
摘要: 1、Chrome 对于chrome浏览器,有时候会有闪退的情况,也许是版本冲突的问题,我们要对照着这个表来对照查看是不是webdriver和chrome版本不对。 chromedriver版本 支持的Chrome版本 v2.39 v66-68 v2.38 v65-67 v2.37 v64-66 v2 阅读全文
posted @ 2020-04-16 21:10 gtea 阅读(1497) 评论(0) 推荐(0) 编辑
摘要: 前世 Selenium RC 早期的Selenium使用的是JavaScript注入技术与浏览器打交道,需要Selenium RC启动一个Server,将操作Web元素的API调用转化为一段段Javascript,在Selenium内核启动浏览器之后注入这段Javascript。开发过Web应用的人 阅读全文
posted @ 2020-04-16 21:08 gtea 阅读(135) 评论(0) 推荐(0) 编辑
摘要: DOM(Document Object Model 文档对象模型) 一个web页面的展示,是由html标签组合成的一个页面,dom对象实际就是将html标签转换成了一个文档对象。可以通过dom对象中js提供的方法,找到html的各个标签。找到标签后就可以操作标签使页面动起来,让页面动起来。 一、获取 阅读全文
posted @ 2020-04-16 21:06 gtea 阅读(164) 评论(0) 推荐(0) 编辑
摘要: HTML中的三把利器的JS 又称为JavaScript,看着好像和Java有点联系,实际上他和java半毛钱关系都没有,JavaScript和我们学习的Python、Go、Java、C++等,都是一种独立的语言,Python的解释器有Python2.7、Python3.x,浏览器具有解释JavaSc 阅读全文
posted @ 2020-04-16 21:05 gtea 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 一、CSS选择器 1 id选择器 2 class选择器 3 标签选择器 4 标签层级选择器 5 class层级选择器 6 id层级选择器 7 id组合选择器 8 class组合选择器 9 属性选择器 10 <!DOCTYPE html> 11 <html lang="en"> 12 <head> 1 阅读全文
posted @ 2020-04-16 21:04 gtea 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 前端的三把利器: HTML:一个人 CSS:这个人的衣服 JS:这个人的行为 HTML(超文本标记语言) html代码实际上就是一套能够被浏览器所识别的规则代码,由一个个标签组成。html代码就是一大长串字符串,而这种字符串的格式正好能够被浏览器所识别,也就有了我们的WEB页面。 后端与前端交互方式 阅读全文
posted @ 2020-04-16 21:03 gtea 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 一、URL编码解码 url的编码解码需要用到标准模块urllib中的parse方法 1 from urllib import parse 2 url = 'http://www.baidu.com?query=python基础教程 $%^&' 3 url_str = parse.quote_plus 阅读全文
posted @ 2020-04-16 20:59 gtea 阅读(293) 评论(0) 推荐(0) 编辑
摘要: 自动化测试执行完成后,需要自动发送测试报告。Python发送邮件可以使用smtplib标准模块,但该模块比较繁琐,推荐使用yagmail这个第三方模块,用法比较简单。 一、邮箱设置 1、在邮箱设置里打开smtp服务 2、开启邮箱授权码 并不是所有邮箱都有邮箱授权码。163邮箱授权码可以自己输入,qq 阅读全文
posted @ 2020-04-16 20:58 gtea 阅读(216) 评论(0) 推荐(0) 编辑