先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新软件测试全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024b (备注软件测试)
正文
测试计划内容:
(1)目的和范围 (2)规程 (3)测试方案和方法 (4)测试的准入和准出
(5)测试计划(流程、时间安排、对应人员) (6)测试的环境配置和人员安排 (7)交付件
参考答案2
我们公司之前按照考核要求写过测试计划,不过后面老大觉得太耽误工作进度,
后面一般都不再写测试计划,而是写版本计划,这个在版本计划,每个人的任务列出来,
负责人列出来,自己根据自己的情况分配时间,然后汇总,大家一起开个小会评审就可以了。
二、Pytest框架-python编程
2.1 自动化测试使用的那些库
1、selenium库 --web自动化测试工具 2. priest框架,运行用例 3. random随机,概率
-
xlrd --获取exell表数据 5. pymysql调用数据库 6. pytest-html --生成html文件
-
yagmanil --发送邮件 8. time-时间 9. Select包–下拉框 10. Keys 模拟键盘操作
-
Webdriverwait智能等待 12. Action Chains模拟鼠标操作
三、性能测试-app测试
3.1 性能测试怎么测试
性能测试其实就是通过自动化工具模拟多种正常、峰值以及异常负载来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,二者可结合使用。
性能指标主要有平均响应时间、90%响应时间、吞吐量、吞吐率,每秒事务数,以及服务器的资源使用率(CPU占比,mem内存占比等)等。当并发用户数超过300时,为了让测试数据更准确,可以考虑分布式压测,通过jmeter客户端控制几台jmeter服务器进行测试。
性能测试要先调试好脚本,主要考虑对脚本的数据参数化和添加断言。因为有些接口需要对业务逻辑或参数格式进行校验,为了能让所有线程数跑起来,需要将数据参数化。
数据参数化有这几种做法:
- 可以将一些固定值改成随机函数;
- 利用JDBC从数据库读取数据并关联变量;
- Excal数据参数化,
- 动态关联参数化,断言是为了判断用例是否
执行成功,并验证服务器的响应错误率。响应断言常用json断言,xml断言用的最少,
性能测试的目的是为了检验系统能否满足客户的性能需求,若性能需求无法满足时,则
要考虑对系统进行性能调优,一般用排除法:
1、首先考虑网络方面问题:使用ping命令查看与目标服务器的连接是否正常、传输速度的快慢。通过提升服务器的带宽,看响应时间是否相应降低。
2、考虑数据库的问题,可以单独去压测数据库,查看数据库的最大连接数和SQL语句的执行时间,索引命中率和sleep等待时间等
3、考虑 Apache/Nginx等中间件的问题,查看中间件设置的最大连接数是否合理,如果设置的连接数太小,会话数超过设定的最大连接数时会导致等待时间变长,出现响应超时情况
4、考虑服务器的硬件配置,如内存、CPU、磁盘读写速度等,可以用top命令来监控,也可以使用nmom工具来监控,nmom会把监控的数据形成表格形式,方便我们查看。
5、最后考虑开发代码写的好不好,处理时间长不长的问题。
四、数据库-抓包与网络协议
4.1 你们数据库怎么用
[原来我们数据库用的比较多的,就是数据结果检查,测试一些数据准备,性能测试造大量数据。]
[测试执行到的结果,我们需要通过sql语句 select来查找数据库对应的表,看看数据库信息跟我们执行的结果是否一致,比如:生成申请借款后,我们会去数据库里面去检查下,数据库中数据是否跟申请订单数据一致。]
[我们在测试执行时需要做一些测试数据准备,我们就用 insert into输入数据或(者update set修改数据),我们需要到数据库查看有没有相关记录保存,保存的数据跟我们输入或者修改的记录是否一致;比如:原来我们一个初审功能里面有个分页功能,测试分页功能,需要100条数据,我们就通过数据库操作添加100,可以用 insert into。也可以用脚本实现,或者存储过程]
[还有在做性能测试时,模拟用户场景时需要用到大量的数据,这时就需要我们到数据库中制造大量的数据出来。比如说,测试充值,需要大量用户数据,充值表中大量数据,比如10W条数据,我们就用存储过程去造。]
五、接口测试-接口自动化
5.1 接口测试主要目的是什么?
例外两种问法:接口测试的价值,意义?为什么要做接口测试?
主要就是验证后台服务端的业务逻有没有问题,提高测试的效率
①越底层发现bug,它的修复成本是越低的
②前端页面修改频繁情况下,接口测试不受页面元素改变而影响
③检查系统的安全性,前端传参不可信,比如京东购物,前端价格不可能传入-1元,但是
通过接口可以传入-1元
④如今的系统复杂度不断上升,传统的测试方法成本急剧增加且测试效率大幅下降,接口自动化测试可以提高测试效率
⑤接口测试相对容易实现自动化持续集成,且相对U自动化也比较稳定,可以减少人工,回归测试人力成本与时间,缩短测试周期
六、UI自动化-Unittest框架
6.1 什么样的项目合适做自动化(至少三个)
功能需求,需求稳定,界面稳定,不会频繁变动,才可以做
版本迭代次数比较多,做出来才有意义
项目周期比较长(大项目)意义
七、白盒测试-持续集成
7.1 白盒测试怎么测
原来工作中,没有涉及过,但是了解过
1、静态扫描
2、动态检查,构造测试数据去检查,语句覆盖—覆盖所有的代码
3、判定覆盖覆盖每个判定条件,每个判定都需要 真假值
4、条件覆盖每个条件 都需要一个真假值
5、判定/条件覆盖
6、组合覆盖,条件之间的组合场景 —重点
7、路径覆盖----后面黑盒流程分析法 —重点
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注软件测试)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注软件测试)
[外链图片转存中…(img-DhBFNZR9-1713566406076)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!