
测试
文章平均质量分 75
肥钛狼
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Cypress 滑动、定位坐标、添加请求头、iframe
【代码】Cypress 滑动、定位坐标、添加请求头、iframe。原创 2023-02-22 12:07:04 · 707 阅读 · 1 评论 -
Failed to connect to the bus: Could not parse server address: Unknown address type (examples of vali
版本更新到Cypress@9.7.0解决。原创 2023-02-09 16:05:39 · 3641 阅读 · 0 评论 -
App Inspector使用 (macaca移动端元素检查器)
1、node环境:这里安装的时候和初始化的时候报错使用了两个版本,所以这里使用nvm来管理node环境,方便版本切换。4、gradle:按依赖时有可能加载不上,使用brew install gradle安装。有可能还是失败,查看安装。2、JDK 1.8(其他版本也不太好使)原创 2023-01-29 18:32:51 · 415 阅读 · 0 评论 -
UIRecorder安装、录制、回放
支持 android ios 和pc端的自动化脚本录制。原创 2023-01-29 18:20:38 · 3553 阅读 · 0 评论 -
Macaca启动 app-inspector -u YOUR-DEVICE-ID报错 please resolve and reinstall android driver
【代码】Macaca启动 app-inspector -u YOUR-DEVICE-ID报错 please resolve and reinstall android driver。原创 2023-01-29 09:31:14 · 268 阅读 · 0 评论 -
安装Gradle
【代码】安装Gradle。原创 2023-01-28 18:41:24 · 289 阅读 · 0 评论 -
Android Studio配置环境变量android sdk
让文件配置立马生效。保存文件后,执行命令。原创 2023-01-28 17:43:10 · 432 阅读 · 0 评论 -
OpenSTF安装
有次还遇到了一件神奇的问题,之前一直连的好好的,但是后来又连的时候,adb devices查看是连接上的,但是stf中一直展示是断开连接的状态,看手机上stfservice 服务没有起来,应该是这个原因连接不上的,执行了下面的命令就好了。如果想让其他机器连接到stf需要加上 --public-ip:stf local --public-ip ip(本机的ip地址)STF 还提供管理员级别,增加了对某些功能(例如预订和分区系统、用户和设备管理等)的权限。原创 2023-01-28 15:21:15 · 827 阅读 · 0 评论 -
无桌面Centos7系统安装Cypress@9.0.0并运行
无桌面Centos7系统安装Cypress@9.0.0并运行原创 2023-01-12 17:23:52 · 915 阅读 · 0 评论 -
goreplay使用
goreplay原创 2022-11-04 14:17:33 · 969 阅读 · 0 评论 -
Appuim使用 原生应用定位 模拟器控制 三种等待 toast控件识别 Get_attribute原理分析 断言
由苹果公司为iphone开发的操作系统,主要给iPhone,iTouch,iPad使用。原名为iPhoneOS,2010年WWDC大会改名为IOS,目前IOS最新版本是ios13。布局ios去掉了布局的概念,直接用变量之间的相对关系完成我位置的计算开发环境系统:MacOS X开发工具: Xcode开发语言:ObjectC安装文件 : .ipa文件/.app文件**注意:**使用Appium测试IOS应用需要使用MacOS操作系统元素定位。原创 2021-02-01 17:17:13 · 715 阅读 · 0 评论 -
mac安装配置android sdk
mac 安装配置android sdk原创 2022-10-27 12:28:47 · 5016 阅读 · 1 评论 -
Shell编程
shell编程标准1、注释使用 #2、头部加上解释环境 #!/usr/bin/bash3、脚本信息Author:Created Time:Release:Script Description:4、运行脚本1、给执行权限hello.sh#! /usr/bin/bashecho "Hello word"执行赋权限chmod 700 hello.sh./hello.sh2、解释器直接执行,不需要给权限bash hello.sh5、>、>>、2&g原创 2021-11-05 09:30:15 · 339 阅读 · 0 评论 -
DRF整体总结
一、无序列化、视图View视图继承from django.views import View获取数据转化(反序列化)json_str_bytes = request.bodyjson_str = json_str_bytes.decode()book_dict = json.loads(json_str)book.name = book_dict['name']book.author = book_dict['author']book.date_time = book_dict['dat原创 2021-07-28 21:00:18 · 165 阅读 · 0 评论 -
服务端性能测试(二) 自动化压测 Docker搭建普罗米修斯监控体系
自动化压测实现思路JMeter 脚本(.jmx文件)- 压测逻辑Shell - 控制逻辑不能绕开麻烦,并发数的更改 - Linux三剑客JMeter 静默运行 - 脱离UI限制,使得自动化运行更稳定JMeter静默压测1、静默 : 脱离UI运行JMeter压测2、好处 :命令运行更容器易3、命令格式 : jmeter -n -t $jmx_file(压测脚本) -l $jtl_file(压测结果原始数据文件)4、jmx JMeter 压测程序脚本文件,压测控制过程记录在原创 2021-04-02 16:01:26 · 804 阅读 · 0 评论 -
服务端性能测试 JMeter
JMeter介绍与安装性能测试基本概念为什么要做性能测试?1、满足用户使用需求:网站访问量大崩溃2、最小化成本:新服务上线不知道多少台服务器3、评估应用系统性能,给运维做系统容量规划提供依据、给开发提供应用优化参考。性能测试的基本概念1、什么是新能测试?模拟多个用户测操作对服务器硬件性能的影响2、TPS(Transaction per Second)每秒事物处理能力3、RT(Response Time)响应时间常见性能压力测试工具Apache ab:APache HTTP服务性能基准原创 2021-03-31 16:08:58 · 829 阅读 · 0 评论 -
接口测试框架封装二、测试步骤数据驱动 模版替换 参数数据驱动 配置数据驱动 通用测试用例封装
测试步骤数据驱动实现原理测试步骤数据(请求信息,最好是字典,好解析。常用的有yaml文件,json文件,Excel等)步骤1、使用yaml文件对测试步骤进行数据驱动2、在yaml文件中实现变量传递模版替换模版字符串官方文档:https://docs.python.org/zh-cn/3/library/string.html?highlight=template#string.Template案例:>>> from string import Template>原创 2021-03-18 17:47:19 · 227 阅读 · 0 评论 -
接口测试框架封装 (接口测试封装思想,多环境支持,处理加密接口 API Object原则 封装小样)
接口测试封装思想配置:根据配置文件获取初始配置和依赖接口封装:封装接口调用进行抽象封装类似PageObject效果业务流程:数据初始化业务用例设计,含有多个api形成的流程定义,不要再包含任何接口实现细节。断言测试框架API对象:完成对接口的封装接口测试框架:完成对api的驱动配置模块:完成配置文件的读取数据封装:数据构造与测试用例的数据封装Utils:其他功能封装,改进原生框架不足测试用例:调用API对象实现业务并断言框架实现选择语言(尽量使用与研发一致的编程语言和技术原创 2021-03-16 16:47:07 · 870 阅读 · 3 评论 -
接口测试用例设计理论
如何开展接口测试1、找开发或者测试主管获取接口说明文档作用:开发测试脚本的依据2、熟悉业务,设计测试用例,准备测试数据3、根据接口说明文档开发接口测试脚本,执行脚本。接口说明文档示例:接口测试点1、接口测试可用性2、接口输入参数个数及命名3、输入参数的必填项4、输入参数的合法性5、输出参数内容的正确性6、接口实现功能验证7、接口文档规范性8、接口传递参数的安全性接口可用性一、主要测试接口是否可用,接口是否存在、接口的协议类型。二、测试用例中包括:1、依据接口文档中给定的原创 2021-03-10 18:35:10 · 1219 阅读 · 0 评论 -
接口测试 复杂数据解析 结构化响应断言JSON XML hamcrest断言体系 schema校验
测试框架基本能力项目管理:pip、virtualenv用例编写:pytest领域能力:app、web、http执行调度:pytest、pycharm、shell、jenkins测试报告:allure2HTTP测试能力请求方法构造:get、post、put、delete、head…请求提构造:form、json、xml、binary响应结果分析:status code、response body、json path、xpath架构特点(requests)功能全面:http / https原创 2021-03-08 16:39:03 · 669 阅读 · 0 评论 -
接口测试准备二、get、post区别 Session Cookie Token区别 Charles功能介绍 scoks、http、websocket、socket区别 mitmproxy
get、post区别1、http的method字段不同2、post可以附加body,可以支持form、json、xml、binary等各种数据格式3、get通过url传参数,post可以使用url和query4、post传递参数较大(有时会遇到使用get加请求参数,导致参数过长,被截断的缺陷)行业通用的规范无状态变化的建议使用get请求数据的写入与状态修改建议用postSession Cookie Token区别Session和Cookie使用:https://www.cnblogs.co原创 2021-03-03 14:43:10 · 1516 阅读 · 1 评论 -
接口测试准备一、 网路基础 常用代理工具 charles使用 Android手机代理抓包
移动互联网公司技术架构接口测试的必要性1、行业成熟方案2、更早份发现问题3、更快的质量反馈接口测试不能替代UI测试1、接口测试有很多优点,但是保证的好似后端的质量,不能解决移动端的额质量2、大前端工程师的产出质量只能通过UI测试保证开发团队组成大前端研发团队:前端工程师:HTML、JS、CSS、Vue、React移动端开发工程师:Java、Kotlin跨端研发工程师:React Native、Flutter、Weex后端研发团队:Spring boot网络协议tcp原创 2021-03-01 15:57:12 · 1247 阅读 · 0 评论 -
App测试工具 Appium(Selenium) Grid方案 Android monkey 测试工具 Maxim测试工具 AppCrawler openSTF手机管理平台、远程管理、调试
自动化遍历测试常见的遍历测试工具google android 原生monkey、app crawler百度 smartmonkey腾讯 newmonkeyvigossjjj smart_monkeymacaca 的 NoSmoke头条的zhangzhao maximweveniruby appcrawlerAndroid monkey 测试工具简介:Monkey是一个子啊模拟器或设备上运行的程序生产用户事件的伪随机流安装Android SDK提供了Monkey工具使用移动设备原创 2021-02-10 15:13:59 · 1169 阅读 · 0 评论 -
模拟器控制 设备交付Api Capability高级用法
模拟器控制模拟器控制终端查看已有的模拟器emulator -list-avds启动模拟器(仅限android Android studio带有)desire_cap["avd"]="Pixel_23_6" # 仅限android SDK 自带的模拟器原创 2021-02-08 17:29:01 · 304 阅读 · 0 评论 -
Appium架构介绍与环境安装
Appium介绍Appium是一个移动端的自动化测试框架,可以用于测试原生应用,移动网页应用和混合应用,且是跨平台的。可用于IOS和Android操作系统。原生应用是指用android或ios编写的应用,移动网页应用是指网页应用,累屎与ios中safari应用或者Chrome应用或者累屎浏览器的额应用。混合应用是指一种包裹wenview的应用,原生用用网页内容交互性的应用。重要的是Appium是跨平台的。何为跨平台,意思是可以针对不同平台用一套api来编写脚本。Appium引擎1、Androide原创 2021-01-29 15:45:17 · 363 阅读 · 0 评论 -
web基本安全测试
一、OWASP服务端安全测试体系官网:https://owasp.org/模拟网站:http://47.95.238.18:9080/index/php常见安全测试工具:OWASP ZAP 开源测试工具WVSAppScanBurpSuiteSqlmap 开源测试工具安全测试关注维度传输敏感信息传递加密链路加密接口访问限制参数注入:sql注入、命令注入、文件注入越权:越过更高的权限、越过同级权限常见安全List业务数据传输链路分析http是否传输敏感信息tcp等原创 2021-01-29 00:14:20 · 578 阅读 · 2 评论 -
PO模式 复用已有的浏览器 使用cookies免登
PO设计模式历史:3013提出 作者:Martin Flower https://www.martifowler.com/bliki/PageObject.html原创 2021-01-26 09:34:16 · 475 阅读 · 0 评论 -
元素定位 基本操作 多窗口处理和iframe处理 多浏览器处理 执行javascript脚本 处理时间控件 上传文件 弹框处理
页面基本定位https://www.cnblogs.com/070727sun/p/12368636.html页面基本操作https://www.cnblogs.com/070727sun/p/12369788.html多窗口处理方法:首先获取到目的页面的句柄,然后获取到所有页面的句柄。然后使用driver.switch_to_windows切换到对应的页面的地址。1、获取到当前的窗口的句柄(driver.current_window_handle)2、获取到所有的窗口句柄(driver.wi原创 2021-01-25 14:05:29 · 464 阅读 · 0 评论 -
selenium用例编辑 三种等待方式
selnium用例编辑使用说明:https://www.selenium-python.readthedocs.io/getting-started.html三种等待方式:直接等待、隐式等待、显式等待直接等待作用:强制等待,线程休眠一定时间from time import sleepsleep(3)隐式等待设置一个等待时间,轮询查找(默认0.5秒)元素是否出现,如果没有出现就抛出异常。这是一个全局的设置,作用在每个查找元素的操作。最好在全局设置,用于缓冲,减少用例失败概率,但时间不要设置太长原创 2021-01-22 18:57:18 · 218 阅读 · 0 评论 -
selenium IDE
一、selenium介绍官网:https://www.selenium.dev/主要包含:Selenium WebDriver(浏览器驱动)、Selenium IDE(用例录制)和Selenium Grid(分布式用例执行)二、selenium安装前提:1、配置好python环境 2、配置好pip工具(python自带)安装:pip install selenium 或者直接在pycharm扩展插件中下载三、Driver配置1、驱动下载地址:https://www.selenium.de原创 2021-01-22 18:02:35 · 1195 阅读 · 1 评论 -
Pycharm中使用git
Pycharm中使用git步骤一 生成对应的git文件Terminal中输入:git init 生成查看是否成功: ls -al 验证是否有生成git的文件步骤二 移除一些不必要使用git提交的文件,提高上传速度。原创 2021-01-21 14:16:37 · 566 阅读 · 0 评论 -
pytest数据参数化 Allure测试框架 yaml的基本使用
pytest数据参数化参数化使用@pytest.mark.parametrize(argnames,argvalues)argnames:要参数化的变量,string(逗号隔开),list,tupleargvalues:参数化的值,list,list[tuple]@pytest.mark.parametrize('a,b',[(1,2),(3,4)])def test_demo1(a,b): print(a,b)# 使用tuple@pytest.mark.parametrize((原创 2021-01-20 14:56:14 · 1045 阅读 · 0 评论 -
Pytest测试框架
Pytest介绍Pytest文档:https://docs.pytest.org/en/latest/contents.html#toc第三方库:https://pypi.org/search/?q=pytest原创 2021-01-19 17:35:30 · 646 阅读 · 1 评论 -
Unittest测试框架
单元测试单元测试?单元测试什么测试?单元测试谁负责?常见的单元测试库UnittestPython 内置标准库Pytest丰富、灵活、语法简单。可以结合allure生成一个炫酷的报告。现在比较流行。NoseNose是对Unittest的扩展,使得python的测试更简单Mockunittest.mock是用来测试python的库,这是一个标准库(python3.3以后)代码覆盖率语句覆盖条件覆盖判断覆盖路径覆盖(一般都是使用这种,以上的都有缺陷)Unittest测试框架U原创 2021-01-19 17:08:31 · 161 阅读 · 0 评论 -
Python常用的标准库 多线程 第三方库
一、OS模块os模块主要是对文件,目录的操作常用方法:os.mkdir() 创建目录os.removedirs() 删除文件os.getcwd() 获取当前目录os.path.exists(dir or file) 判断文件或者目录是否存在二、time模块time.asctime() 国外的时间格式time.time() 时间戳time.sleep() 时间等待time.localtime 时间戳转换成时间元组time.strftime() 将当前的时间戳转成原创 2021-01-19 09:21:51 · 407 阅读 · 0 评论 -
Python 函数 数据结构 模块 python的输入输出 文件读写 json格式化转化
函数定义函数代码块以def关键字开头,后接函数标识符名称和圆括号()。return[表达式]结束函数,选择性的返回一个值给调用方。不带表式的return相当于返回None。关键字参数1、kwarg=value形式,在调用函数数是添加2、在函数调用/定义中,关键字参数必须跟随在位置参数的后面。3、当存在一个形式**name的一个形参时,他会接收一个字典4、形式为*name,接收一个包含除了己有形参列表以外的位置参数的 元组 的形参5、特殊参数仅限关键字,在参数前面加def medth(*,a原创 2021-01-18 18:13:31 · 290 阅读 · 0 评论 -
Python基础 数据类型 控制语句
Python使用说明:https://docs.python.org/3/index.html一、数据类型1、变量定义:在程序设计中,变量是一种存储数据的载体。计算机中的变量是实际存在的数据或者说是存储器中存储数据的一块内存空间,变量的值可以被读取和修改,这是所有计算和控制的基础。命名规则:硬性规则:1、变量名由字母、数字、和下划线构成。数字不能开头。2、大小写铭感3、不能和关键字和系统的保留字冲突PEP 8要求1、用小写字母拼写,多个单词用下划线连接2、受保护的示例属性用单个下划线开原创 2021-01-18 13:03:22 · 188 阅读 · 0 评论 -
Python安装管理 Pycharm安装使用 pip使用
一、Python环境管理(mac系统)1、安装: 下载python安装包:https://www.python.org/ Python安装文档(windwos系统): https://testing-studio.com/t/topic/57/42、查看安装结果 终端中输入 python (对于Mac和Linux系统会本身自带一个较低的Python版本) mac系统的安装Python的默认路径是:/usr/local/bin/python3.8 设置软链接 ln -f /usr/原创 2021-01-18 12:21:52 · 1449 阅读 · 1 评论 -
阿里巴巴性能压测实践
第1期:《压测环境的设计和搭建》添加链接描述第2期:《性能压测工具选型对比》第3期:《阿里巴巴在开源压测工具 JMeter 上的实践和优化》第4期:《并发模式与 RPS 模式之争,性能压测领域的星球大战》...转载 2019-09-03 15:59:12 · 490 阅读 · 0 评论