05 2021 档案

摘要:一、yaml数据驱动 1、目标 目标 掌握使用yaml进行数据驱动 2、定义数据文件 #TestLogin.yml "case": "test_login_1" "url": "authorizations" "data": username: "python" password: "1234567 阅读全文
posted @ 2021-05-31 22:03 丝瓜呆呆 阅读(257) 评论(0) 推荐(0) 编辑
摘要:一、断言介绍 (1)介绍 断言是自动化最终的目的,一个用例没有断言,就失去了自动化测试的意义了 断言用到的是 assert关键字。预期的结果和实际结果做对比,符合预期就是pass,不符合就fail (2)常用断言 pytest里面的断言就是python里assert的断言方法 assert xx 判 阅读全文
posted @ 2021-05-31 17:35 丝瓜呆呆 阅读(194) 评论(0) 推荐(0) 编辑
摘要:一、pytest安装与入门 1、介绍 - 简单灵活, - 容易上手, - 文档丰富 - 支持参数化,能够支持简单的单元测试和复杂的功能测试 - 具有很多第三方插件,并且可以自定义扩展 - 可以很好的和Jenkins工具结合 2、安装pytest (1)命令行执行以下命令 $ pip3 install 阅读全文
posted @ 2021-05-31 11:57 丝瓜呆呆 阅读(150) 评论(0) 推荐(0) 编辑
摘要:1、logging模块简介及快速使用 logging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级、日志保存路径、日志文 件回滚等; (1)优点 1. 可以通过设置不同的日志等级,在release版本中只输出重要信息,而不必显示大量的调试信息; 2. 尤其是代码运行在 阅读全文
posted @ 2021-05-31 09:33 丝瓜呆呆 阅读(261) 评论(0) 推荐(0) 编辑
摘要:1、Yaml 介绍及安装 (1)yaml介绍 Yaml 是一种所有编程语言可用的友好的数据序列化标准。语法和其他高阶语言类似,并且可以简单表达字 典、列表和其他基本数据类型的形态。语法规则如下: 1. 大小写敏感。 2. 使用缩进表示层级关系。 3. 使用空格键缩进,而非Tab键缩进 4. 缩进的空 阅读全文
posted @ 2021-05-28 16:50 丝瓜呆呆 阅读(763) 评论(0) 推荐(0) 编辑
摘要:1、requests介绍及简单使用 (1)Requests介绍 流行的接口http(s)请求工具 使用功能强大、简单方便、容易上手 (2)Requests简单使用 安装Requests包 $ pip3 install requests 简单使用 import requests requests.ge 阅读全文
posted @ 2021-05-28 16:23 丝瓜呆呆 阅读(361) 评论(0) 推荐(0) 编辑
摘要:一、项目及框架搭建 1、项目环境工具 python https://www.python.org/downloads/ pycharm http://www.jetbrains.com/pycharm/ git https://git-scm.com/download 2、配置 Pycharm配置 阅读全文
posted @ 2021-05-28 16:15 丝瓜呆呆 阅读(334) 评论(0) 推荐(0) 编辑
摘要:OWASP ZAP项目:https://github.com/zaproxy/wiki/Downloads ZAP下载地址:https://github.com/zaproxy/zaproxy/wiki/Downloads 在线漏洞模拟环境 Dvwa下载安装在本地后练习 用户名 admin 密码pa 阅读全文
posted @ 2021-05-27 21:50 丝瓜呆呆 阅读(119) 评论(0) 推荐(1) 编辑
摘要:APP的业务逻辑是可篡改,从而进入异常流程 应用安全风险 OWASP :https://owasp.org/ OWASP top 10 : https://owasp.org/www-project-top-ten/ OWASP 官方提供的安全检查checklist,可以去官网查看 OWASP的做法 阅读全文
posted @ 2021-05-27 21:20 丝瓜呆呆 阅读(168) 评论(0) 推荐(0) 编辑
摘要:综合性能 针对所有APP的性能,从大局观去看性能数据。 命令:adb shell vmstat r:表示运行队列 b:阻塞的进程 swpd:虚拟内存使用的大小 free:空闲的物理内存的大小 buff:缓存 cache:缓冲 si:每秒从磁盘读入虚拟内存的大小 so:每秒虚拟内存写入磁盘的大小 bi 阅读全文
posted @ 2021-05-27 17:01 丝瓜呆呆 阅读(121) 评论(0) 推荐(0) 编辑
摘要:首先,如果测试需要用到的话,还是建议一下大家去看下Android-studio的官方文档。文档地址:Documentation | Android 开发者 | Android Developers (google.cn) 然后点击performance,基本上就是性能方面的指南了 webView性能 阅读全文
posted @ 2021-05-26 21:14 丝瓜呆呆 阅读(202) 评论(0) 推荐(1) 编辑
摘要:兼容性测试概念 几个硬件之间、几个软件之间或是软硬件之间的相互配合程度 APP兼容性测试 移动设备型号多样 测试APP在主流设备上是否正常运行 测试APP在主流设备上奔溃卡顿现象 兼容性测试方法 人工测试 借助第三方工具 appcrawler 选定APP和范围 java -jar appcrawle 阅读全文
posted @ 2021-05-24 19:04 丝瓜呆呆 阅读(121) 评论(0) 推荐(0) 编辑
摘要:健壮性测试 健壮性测试用于测试系统在出现故障时,是否能够自动恢复或者忽略故障继续运行。目前只是一个概念,没有具体工具去测试。 操作过程 对应用进行盲点 网络不佳 数据不通 工具使用 Monkey,Maxium Charles Appcrawler 一般企业就是进行时间较长,半个小时以上的自动跑,看是 阅读全文
posted @ 2021-05-24 18:51 丝瓜呆呆 阅读(478) 评论(0) 推荐(0) 编辑
摘要:弱网问题 封闭环境,网速降低 丢包 数据无法加载 消息更新不及时等 弱网速度 低于2G或者3G速率 模拟弱网 1、使用charles模拟弱网 下载地址:https://www.charlesproxy.com/download/ 2、Charles代理设置 port:8888 3、设置本地代理:(电 阅读全文
posted @ 2021-05-24 18:38 丝瓜呆呆 阅读(102) 评论(0) 推荐(0) 编辑
摘要:测试工具battery-historian 安装 git clone https://github.com/google/battery-historian.git cd battery-historian 下载golang, python 版本python2.7 go get -d -u gith 阅读全文
posted @ 2021-05-24 18:17 丝瓜呆呆 阅读(248) 评论(0) 推荐(0) 编辑
摘要:网络分析 显示网络流量:adb shell dumpsys netstats 活动接口和活动UID接口:安卓基本相同 开发统计信息/Xt统计信息 UID统计信息 找到应用UID adb shell dumpsys package 包名|grep userId adb shell dumpsys ne 阅读全文
posted @ 2021-05-24 17:23 丝瓜呆呆 阅读(123) 评论(0) 推荐(0) 编辑
摘要:一、先介绍下内存的名词解析 VSS :virtual set size 虚拟耗用内存 (用处不大) RSS:resident set size 实际使用物理内存(包括共享内存) PSS:proportional set size 实际使用物理内存(比例分配共享内存)(相加就是系统的内存用量) USS 阅读全文
posted @ 2021-05-24 17:03 丝瓜呆呆 阅读(132) 评论(0) 推荐(0) 编辑
摘要:CPU 与GPU的关系 移动端有CPU和GPU,图形API不允许CPU直接与GPU通信,通过中间层来连接这两部分。 简单来说:就是中间层维护一个队列,CPU把display list放入队列,GPU从队列取数据进行绘制。 GPU渲染工具 Android 开发者工具提供性能调优工具:GPU渲染分析 需 阅读全文
posted @ 2021-05-24 16:28 丝瓜呆呆 阅读(101) 评论(0) 推荐(0) 编辑
摘要:卡顿 CPU、内存、网络都会导致卡顿 工具 systrace sdk/platform-tools/systrace 需要python2.7 可能遇到的问题: 1、No module win32con pip2 install pypiwin32 2、No module six pip2 insta 阅读全文
posted @ 2021-05-24 10:38 丝瓜呆呆 阅读(114) 评论(0) 推荐(0) 编辑
摘要:一、所有的浏览器都会支持一个W3C的标准 具体标准可以查看:https://www.w3.org/TR/navigation-timing/ 资源加载指标分析: Prompt for unload:访问一个新页面,旧页面卸载完成的时间 redirect:重定向,用户注销登录时返回主页面和跳转到其它的 阅读全文
posted @ 2021-05-21 20:37 丝瓜呆呆 阅读(184) 评论(0) 推荐(0) 编辑
摘要:一、chrome浏览器自带分析工具 说明: Disable cache:不加载缓存,从零载入 蓝色线:dom 出现 红色线:图片等资源已加载完 说明:Queueing: 队列等待时间 stalled: 在队列中,停止请求 waiting:服务器响应时间 Content Download:下载资源时间 阅读全文
posted @ 2021-05-21 19:56 丝瓜呆呆 阅读(232) 评论(0) 推荐(0) 编辑
摘要:代理工具:Charles 、burpsuite 抓包工具:tcpdump 、wireshark 阅读全文
posted @ 2021-05-21 12:49 丝瓜呆呆 阅读(42) 评论(0) 推荐(0) 编辑
摘要:一、activity的启动流程 1、唤醒APP 2、启动一个空白窗口,这个窗口什么都不做 3、启动一个线程 4、启动一个object,即调用Application OnCrete 5、创建主线程,即MainTread,用于初始化mainActivity,渲染和数据初始化。渲染完成后,即Display 阅读全文
posted @ 2021-05-21 12:35 丝瓜呆呆 阅读(113) 评论(0) 推荐(0) 编辑
摘要:1.现象 QPS、TPS降低,CPU使用率超高导致宕机; 磁盘IO过高,网卡IO被占满 2.原因 SQL查询速度慢,语句效率低下; 服务器硬件性能差; 表数据文件巨大,表单超过千万行; 资源锁定造成数据库事务超时,数据库死锁; 事务粒度过大 3.解决办法(主要解决数据库的问题) 定位资源占用较大的事 阅读全文
posted @ 2021-05-20 15:56 丝瓜呆呆 阅读(72) 评论(0) 推荐(0) 编辑
摘要:1.现象 磁盘读写速率、IOPS过高,系统出现卡顿 2.原因 SQL写法、参数配置不合理; 交换机故障,网线老化; 存储针列条带宽不足,缓存不足,Qos限制,RAID级别设置不当 3.解决办法(主要解决磁盘IO的问题) 通过把日志和数据库对象分布在独立的设备上 把不同的数据库放在不同的硬盘上 阅读全文
posted @ 2021-05-20 15:55 丝瓜呆呆 阅读(269) 评论(0) 推荐(0) 编辑
摘要:1.现象 项目内存持续增加; 响应时间成规律性的先增加后回落; 查看应用日志,会出现OutOfMemoryError错误; GC日志发出FULL GC警告; 系统长时间运行后出现访问错误或宕机 2.原因 启动参数内存值设定得过小; 代码中存在死循环或者循环产生过多重复的对象实体; 集合类中有对对象的 阅读全文
posted @ 2021-05-20 15:54 丝瓜呆呆 阅读(61) 评论(0) 推荐(0) 编辑
摘要:1.现象 系统访问卡顿,QPS、TPS降低,响应时间延长,网络吞吐量降低; 应用服务器内存和IO正常,CPU利用率增高 2.原因 线程太多,上下文切换太频繁; GC回收使用了过高的CPU资源; 某段代码陷入了死循环; 锁争用激烈 3.解决方法(主要解决CPU的问题) 考虑使用更高级的CPU代替当前的 阅读全文
posted @ 2021-05-20 15:53 丝瓜呆呆 阅读(63) 评论(0) 推荐(0) 编辑
摘要:TPS=并发用户/平均响应时延 1、网络带宽 在压力测试中,有时候要模拟大量的用户请求,如果单位时间内传递的数据包过大,超过了带宽的传输能力,那么就会造成网络资源竞争,间接导致服务端接收到的请求数达不到服务端的处理能力上限。 2、连接池 可用的连接数太少,造成请求等待。连接池一般分为服务器连接池(比 阅读全文
posted @ 2021-05-20 15:52 丝瓜呆呆 阅读(685) 评论(0) 推荐(0) 编辑
摘要:1.先top ,然后按1 发现load average负载高. 然后用mpstat -P ALL 发现iowait不高,所以内存和IO暂时排除,top中wa不高,也验证了I/O没有问题 找其他导致CPU高的原因,找进程,找到占用CPU高的java进程PID,分别为1932,30693和30788 利 阅读全文
posted @ 2021-05-20 15:39 丝瓜呆呆 阅读(76) 评论(0) 推荐(0) 编辑
摘要:一.操作系统计数器和分析 1.内存分析方法 iostat命令 Read(write) per sec :磁盘读写次数,一般>5,表示磁盘读,而不是缓存读 r/s w/s 磁盘使用率高,磁盘队列长(wait),而Read(write) per sec小,就是磁盘瓶颈 队列变长,而Read(write) 阅读全文
posted @ 2021-05-20 15:36 丝瓜呆呆 阅读(146) 评论(0) 推荐(0) 编辑
摘要:一、CPU 查看使用情况: 1.vmstat 统计1-id计数 2.sar -u 统计1-%idle计数 3.dstat 统计1-idl计数 4.mpstat -P ALL 统计 1-%idle计数 5.ps 统计CPU计数 满载:vmstat 的r计数 sar -q, 错误:perf工具捕获错误信 阅读全文
posted @ 2021-05-20 15:32 丝瓜呆呆 阅读(126) 评论(0) 推荐(0) 编辑
摘要:一.操作系统计数器和分析 1.内存分析方法 iostat命令 Read(write) per sec :磁盘读写次数,一般>5,表示磁盘读,而不是缓存读 r/s w/s 磁盘使用率高,磁盘队列长(wait),而Read(write) per sec小,就是磁盘瓶颈 队列变长,而Read(write) 阅读全文
posted @ 2021-05-20 10:00 丝瓜呆呆 阅读(113) 评论(0) 推荐(0) 编辑
摘要:1.kafka主要看堆积消息数,生产速率,消费速率 2.数据库主要关注: CPU, QPS ,TPS, 行锁,慢日志,数据库总连接数(有没有连满,连满会连接拒绝) 3.JVM:内存:主要看新生代内存,老生代内存和FULLGC。 快速分析定位内存泄漏,和初始内存是否合理 线程: 死锁,空闲执行和粘滞线 阅读全文
posted @ 2021-05-19 17:01 丝瓜呆呆 阅读(279) 评论(0) 推荐(0) 编辑
摘要:前言:做了很久测试,但是却越来越不知道自己需要会什么技能了,也感觉自己不会的东西越来越多,下面记录下,也是从别处看到的。 一、测试框架的演变 1.敏捷 2.持续集成 jenkins更新代码仓库,构建,执行单元测试,代码静态分析,多个模块测试 代码管理 Git 代码分析 FindBugs Sonar 阅读全文
posted @ 2021-05-19 16:53 丝瓜呆呆 阅读(354) 评论(0) 推荐(0) 编辑
摘要:一、设计思路 1、一个好的框架,必须要可读性强,所以目录规划尤为重要; 2、公共的方法提取出来,提高复用性; 3、可变的环境等参数,提取出来放到配置文件中,这样,每次只需要更改配置文件中的值; 4、为了追踪错误,需要必要的日志记录,日志写入文件中; 5、请求类型基本上都是get、post,所以,可以 阅读全文
posted @ 2021-05-19 16:40 丝瓜呆呆 阅读(932) 评论(0) 推荐(0) 编辑
摘要:在我们接口测试运行起来的时候,前后置关联的问题,那么要怎么处理呢? 一、首先我们要搞清楚是数据依赖还是接口依赖 1、我们需要判断是数据依赖还是接口依赖 接口依赖是上个接口执行了才能执行下一个接口 数据依赖是上个接口的返回作为下一个接口的输入 2、方法 利用global全局变量,这个不适用大规模参数化 阅读全文
posted @ 2021-05-19 16:36 丝瓜呆呆 阅读(105) 评论(0) 推荐(0) 编辑
摘要:一、接口测试框架 首先介绍一下,我接口自动化的框架,如下图 Requests实现接口调用 Yaml/Excel遍历测试用例 结果断言验证 生成测试报告 自动发送邮件 集成jenkins自动化接口测试 二、代码框架 ├── common ├── config ├── data ├── logs ├── 阅读全文
posted @ 2021-05-19 16:07 丝瓜呆呆 阅读(204) 评论(0) 推荐(0) 编辑
摘要:1、概念 把以人为驱动的测试行为转化为机器执行的一种过程,自动化测试节省人力、时间或硬件资源,提高测试效率。 2、优势特点 快速 比手工操作快 可靠 精确地执行相同的操作,可以排除手工操作错误 可重复 测试相同操作重复执行得到软件响应状况 可编程 可以编程得到应用系统的隐藏信息 可重用 针对不同版本 阅读全文
posted @ 2021-05-19 15:05 丝瓜呆呆 阅读(377) 评论(0) 推荐(0) 编辑
摘要:一.简介: HttpRunner:是一款面向 HTTP(S) 协议的通用测试框架,只需编写维护一份 YAML/JSON 脚本,即可实现自动化测试、性能测试、线上监控、持续集成等多种测试需求。采用 YAML/JSON 的形式描述测试场景,保障测试用例描述的统一性和可维护性。借助辅助函数(debugta 阅读全文
posted @ 2021-05-19 14:52 丝瓜呆呆 阅读(476) 评论(0) 推荐(0) 编辑
摘要:一.简介: Robot Framework:Robot Framework是由Python编写的一款功能丰富并且扩展性强的自动化测试框架,也可以在Java和 .NET 上运行。 二.操作或运行流程 Robot Framework: 1.安装: 安装Python pip install Robotfr 阅读全文
posted @ 2021-05-19 14:45 丝瓜呆呆 阅读(4296) 评论(3) 推荐(0) 编辑
摘要:1.开发的接口文档出来就要写自动化测试。测试用例可以用思维导图 2.UI设计图的比对,可以用TC、小罗贝等,支持无线连接。 3.注意手势,用户喜欢通过手势进行操作,比如右划、下拉,放大等。这里针对重要场景一定要注意手势,因为开发不做适配或处理的话,很容易就崩溃闪退了。 4.弱网测试,模拟APP在网速 阅读全文
posted @ 2021-05-19 14:40 丝瓜呆呆 阅读(91) 评论(0) 推荐(0) 编辑
摘要:一、pytest运行规则: pytest可以收集所有以test_*.py文件,Test开头的类,和以test_开头的函数和方法,都能识别成测试用例。 当然也可以改变这个的识别规则 二、常用参数 -k 满足表达式的都会执行。 -collect-only 只负责收集测试用例,不会执行,可以看有多少个用例 阅读全文
posted @ 2021-05-19 14:39 丝瓜呆呆 阅读(132) 评论(0) 推荐(0) 编辑
摘要:首先,需要介绍一下管道和正则表达式,因为它经常和Linux三剑客一起使用。 一、管道Linux 提供管道符“|”,将两个命令隔开,管道符左边命令的输出作为管道符右边命令的输入。 command1 | command2 | command3 二、正则表达式 正则表达式就是记录文本规则的代码。 常用的元 阅读全文
posted @ 2021-05-19 14:38 丝瓜呆呆 阅读(180) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示