目录:导读
- 前言
- 一、Python编程入门到精通
- 二、接口自动化项目实战
- 三、Web自动化项目实战
- 四、App自动化项目实战
- 五、一线大厂简历
- 六、测试开发DevOps体系
- 七、常用自动化测试工具
- 八、JMeter性能测试
- 九、总结(尾部小惊喜)
前言
1、Web功能测试
1)链接测试
点开功能点,能跳转的;
所有链接是否都链接到,该链接的页面;
所链接的页面是否存在;
孤立页面,指没有链接指向该页面,只有知道正确的URL地址才能访问
2)表单测试
页面中信息输入后,需要做相关提交操作的,比如:注册、修改密码、登录等;
常见控件:
输入框:长度,数据类型,必填,重复,空格,空值,以及业务约束(短信验证码)等
下拉框:
默认信息;
数据完整性/正确性(第一条、最后一条、随机一条);
手动输入值,模糊匹配,联动选择;
业务常见的选择操作;
上传文件(图片、文本、视频等):大小、格式、尺寸、数量、内容规则;
提交按钮:弱网快速点击、快捷键回车/单机、提交内容是否涉及加密(bcrypt、MD5)
3)搜索测试
输入框(按时间搜索等)、下拉框
搜索条件:A/B/C
任单个条件查询:下拉框、输入框(模糊搜索、超长搜索、不存在条件、为空)
任两个条件搜索
任三个条件搜索
整体考虑,结合业务(比如:上个模块的操作,是当前搜索的条件)
时间搜索:
开始时间、结束时间
开始时间 = 结束时间,即当天数据
开始时间 < 结束时间,跨天,跨月,跨年(造跨年、跨月的数据)
开始时间 > 结束时间
手动输入、格式(20201010、2020-10-10、2020/10/10)
4)删除测试
没有数据、删除
选择一条数据/批量选择——删除;删除二次确认,合理提示
删除数据关联性:单独删除,还是关联性删除
数据库角度,确认数据库是否及时更新
5)cookie、session测试
存储用户信息:记录用户身份给与后续操作通行证
确认浏览器存储cookie目录有无cookie相关信息
保存时间之外,cookie是否正常
删除浏览器所有的cookie文件,再次登录,会怎么处理
鉴权,验证用户是否拥有访问系统的权利(对每个URL进行)
简单来说:
篡改cookie;
cookie过期检查
禁用cookie
cookie的兼容
cookie的加密等
数据库测试
功能测试同步关注——所有页面功能操作,都会涉及数据库增删改查;
搭建测试环境,初始化sql脚本(项目库里的表结构、存储数据创建的sql语句),正确性
数据一致性错误,主要是由于用户提交的表单信息不正确而造成
输出错误,主要是由于网络速度或程序设计问题等引起
2、Web界面/可用性测试
功能测试同步关注
技术需求角度:是否跟产品原型/UI效果图一致
用户角度:好不好用、操作简不简单
社会角度:行业标准,企业规范、国家准许等
主要测试点:
导航测试:页面结构、导航、菜单、连接的风格是否一致
图形测试:
要确保图形有明确的用途,图片或动画不要胡乱地堆在一起,以免浪费传输时间。Web应用系统的图片尺寸要尽量地小,并且要能清楚地说明某件事情,一般都链接到某个具体的页面。
验证所有页面字体的风格是否一致。
背景颜色应该与字体颜色和前景颜色相搭配。
图片的大小和质量也是一个很重要的因素,一般采用JPG或GIF压缩格式。
3、内容测试
信息的正确性:是指信息是可靠的还是误传的。
信息的准确性:是指是否有语法或拼写错误。
信息的相关性:是指是否在当前页面可以找到与当前浏览信息相关的信息列表或入口,也就是一般Web站点中的所谓"相关文章列表"。
4、整体界面测试
整体界面是指整个Web应用系统的页面结构设计,是给用户的一个整体感。
对整体界面的测试过程,其实是一个对最终用户进行调查的过程。一般Web应用系统采取在主页上做一个调查问卷的形式,来得到最终用户的反馈信息。
对所有的可用性测试来说,都需要有外部人员(与Web应用系统开发没有联系或联系很少的人员)的参与,最好是最终用户的参与。
5、兼容性测试
平台测试,不同的操作系统
浏览器测试,框架和层次结构风格在不同的浏览器中也有不同的显示;不同的浏览器对安全性和Java的设置也不一样
主流浏览器+内核(决定了页面展示的格式效果)
浏览器兼容性测试工具的使用(IEtester等)
功能测试同步关注,分工合作
6、接口测试
确保后端代码的功能实现
确保数据端的数据类型正确处理,确保导出来的数据符合需求
主流工具:postman、jmeter等
7、安全测试
sql注入,把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。
select *
from member
where usemame = 'haha' or 1=1 --'
and password = '123456'
XSS攻击,跨站脚本攻击(Cross Site Scripting),是一种经常出现在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中。比如这些代码包括HTML代码和客户端脚本,例如:< IMG SRC=“javascript:alert(‘XSS攻击’);” >;
防御XSS攻击方法:
验证所有输入数据,有效检测攻击;
对所有输出数据进行适当的编码,以防止任何已成功注入的脚本在浏览器端运行。
漏洞扫描工具appscan等
8、性能测试
jmeter、loadrunner等;
正常、异常、峰值负载条件,对系统各项指标进行测试;
负载测试:保证Web系统的在需求范围内能正常工作
压力测试:测试系统的限制和故障恢复能力。侧重于确定系统崩溃时的用户负载量。压力测试的区域包括表单、登录和其它信息传输页面等
连接速度测试
设定如下指标参数:
N:并发用户的数量;
T:每单位时间的在线事务数量;
D:事务服务器每次处理的数据负载;
P:系统的通信吞吐量。
吞吐量计算公式:P=N * T * D
下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
在挫折面前不气馁,在困难中不止步,坚定信念,持续奋斗,勇往直前,唯有坚持不懈,才能踏上成功之路,创造辉煌人生。
生命不息,奋斗不止,只要心怀梦想,勇往直前,坚定前行,就能跨越困难,创造出自己的辉煌,向着更远大的目标砥砺前行。
每一次努力都是为了成为更好的自己,不畏艰辛,不惧困难,坚持追求,勇往直前,唯有拼搏奋斗,才能书写属于自己的传奇人生。