一、测试是什么
1、找bug,就是查找软件测试错误的过程
2、加深对软件的认知,使软件更适合用户的使用
3、测试工作——执行测试
a、参与需求评审、计划测试流程、书写测试方案、编辑测试用例
b、参与需求会议、设计评审会、参加测试例会、测试总结会议
c、学习测试工具、了解项目业务、
d、编辑测试用例能力、熟悉规划测试用例时的方法
4、与产品经理沟通需求
和开发沟通测试过程中输出的问题单
二、测试目的
1、验证软件能实现用户需要的正常功能,找bug
2、预防问题的出现,前期发现问题避免问题的出现;对问题进行总结分析,配合开发规避问题
三、软件的生命周期
用户提出需求——计划软件开发测试等——需求分析——设计模型——编程——测试——维护
当一个软件官方不再进行维护时则视为软件死亡。但某些使用者还是可以使用的
四、软件研发的三个模型
1、瀑布模型
步骤:计划——需求分析——设计——编程——测试——维护
适用对象:需求确定,功能简单的软件
优点:清晰、步骤齐全
缺点:周期过长的软件不适合,比如操作系统的研发,内容复制且庞大,前期无法预料到所有问题;技术问题的解决时间不可控制
需求变化快的软件不适合,如果一次性完成,后期因为需求的变化会造成维护量过大
2、螺旋模型
在瀑布模型上加上迭代或者称加上循环
适用对象:庞大的软件分成若干小需求,先完成重要的需求
变化快的软件:前面的迭代完成已经稳定,等到其他需求稳定后,在后面迭代实现
3、敏捷
适用对象:多次迭代,以时间周期为终止点,迭代有固定的时间
特点:固定的周期,不是以需求完成作为终止点;周期短,通常为15天左右为一个周期;敏捷测试、每日构建;需要工具支持
五、研发团队
1、开发团队:需求分析、设计、编码
2、测试团队:功能测试、自动化测试、性能测试
3、质量管理人员:项目管理人员、CMO配置人员、QA
六、缺陷是什么
1、缺陷可以理解为错误,不符合要求的部分
2、比如软件代码内部的不足、人为引入的错误、不符合用户的习惯
3、缺陷一般分为三类:失效(软件运行失败)、故障(某个主要功能的缺失或不可用)、一般
七、测试工程师
一般分为三类:功能测试工程师、自动化测试工程师、性能测试工程师
一般情况下测试工程师的成长也是由功能到自动化再到性能
测试工程师提升自我的方面:经验(测试流程、项目、业务)、技术(新的开发技术、代码、测试工具、新的测试模型)、测试流程、沟通能力