1.敏捷模型
敏捷模型是一种以人为核心,迭代,循环渐进的开发方法。在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的输出都经过测试,具备可集成和可运行的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。主流的敏捷开发方式是Scrum,Scrum由产品负责人、敏捷教练和研发团队组成,产品负责人整理用户故事,定义其商业价值,制定发布计划,对产品负责,敏捷教练负责召开各种会议,协调项目,为研发团队服务,研发团队则由不同技能的成员组成,通过紧密协同,完成每一次迭代的目标,交付产品。
2.质量模型
GB/T 25000.51-2016将质量模型总结为功能性、性能效率、兼容性、易用性、可靠性、信息安全性、维护性、可移植性八个方面。
3.测试的大致分类
单元测试、冒烟测试、系统测试、回归测试、app自动化测试、web自动化测试、接口测试、性能测试、安全测试。
4.测试工程师大致分类
大致分为业务测试工程师、回归测试工程师、系统测试工程师、软件测试工程师、算法测试工程师、测试开发工程师、大数据测试工程师、自动化测试工程师。
5.测试可以大致步骤
分为五个步骤:分析(需求)、计划(测试点)、设计(测试用例)、实现(编写脚本)、执行(运行脚本)。
6. 测试用例设计方法
等价类划分法、边界值分析法、判定表法、流程分析法、错误猜测法。
7.常用测试框架
unittest和pytest。unittest是Python内部自带的一个单元测试的模块,unittest具备完整的测试结构,支持自动化测试的执行,对测试用例集进行组织,并且提供了丰富的断言方法,最后支持使用测试报告工具生成报告。pytest是Python语言中一款强大的单元测试框架,pytest需要额外安装,用来管理和组织测试用例,可应用在单元测试、自动化测试工作中,pytest比unittest更灵活。
8.常用测试报告工具
HTMLTestRunner、BeautifulReport和Allure。HTMLTestRunner的报告模板比较落后。BeautifulReport的界面相对简洁直观。Allure则可以生成丰富美观的报告。
9.日志管理工具logging
日志可以在程序出现问题后让开发人员或运维人员快速定位问题所在,在开发调试、定位故障、了解程序运行情况等方面发挥重要作用。
10.WEB自动化测试库selenium
selenium元素定位:id、name、class name、tag name、link text、partial link text、xpath、css selector,xpath和css selector是万能定位方法,支持绝对/相对路径定位、单/多属性定位、模糊定位,自动化测试LOVE四步法:定位(Locate)、操作(Operate)、断言(Verificate)、异常处理(Except)。
11.APP自动化测试库appium
支持iOS平台和Android平台上的原生应用,WEB应用和混合应用。
12.接口测试
接口测试常用库requests,常用接口测试工具有apifox、postman和jmeter,接口文档工具swagger,接口数据工具mock。
13.性能测试
常用性能测试工具有loadrunner和jmeter。
14.测试框架
数据驱动、关键字驱动和页面对象模型(Page Object Model, POM)。数据驱动框架DDT(Data Driver Test),关键字驱动框架RobotFramework,POM以WEB为单位维护对象。
15.自动化测试脚本录制工具Airtest
Airtest是网易出品的一款基于图像识别和poco控件识别的一款UI自动化测试工具,可用于游戏和WEB的自动化测试。
16.持续集成/持续部署(CI/CD)
CI/CD工具主要是jenkins。
17.编程语言
除了掌握基础的Python语言,涉及网页并发测试还需要掌握Go语言,涉及硬件相关的测试还需要掌握C/C++语言,涉及金融系统测试还需要掌握Java语言。
上述每个知识点都需要深入学习和掌握才算得上是测试入门
|