一。软件测试定义:(为了发现程序中的错误而执行程序的过程)
1为了发现程序员在开发中存在的代码以及逻辑错误
2审核产品的完成是否符合用户的需求
3提高客户的体验
4交付更高质量的产品
二。软件测试的过程阶段:1计划2设计3执行4评估5验收
1.计划测试:编写测试计划,参考需要规格说明书、项目总体计划,测试范围、进度安排,人力物力的分配,整体测试侧脸的制定,和风险评估规则措施有一个制定,一般由测试主管编写。
2.设计阶段:主要编写测试用例,参考需求分析、概要设计、详细设计等文档,也会和开发、产品经理沟通。
3.执行阶段:先搭建测试环境,执行预测,判断当前版本是否可以测试,如果测试通过正式进入系统测试,遇到问题提交BUG,对BUG进行跟踪,具体测试轮次由开发质量和版本复杂程度决定。
4.评估阶段:出测试报告,对整体过程做总结,对当前版本质量评估。
5.验收阶段:出用户手册,操作指引,公司严格评审流程,保证每一步输出的有效。
三。V模型结构
1.需要分析:明确客户需要是什么,需要软件做成什么样子,有什么功能。
2.概要设计:主要是架构的实现,搭建架构,表述个模块功能、模块接口连接和数据传递的实现等项事物。
3.详细设计:各个模块进行深入分析,对各模块组合进行分析分,这阶段需要伪代码级别,已经把程序的具体实现功能,现象等描叙出来。其中需要包含数据库设计说明。
4.编码:按照详细设计好的模块功能表,编程人员编写出实际代码。
5.单位测试:软件中的最小可测试单元进行检查和验证(一般开发完成)
6.集成测试:在单元测试的基础上,将所有模块按照设计要求组装成为子系统或系统,进行集成测试。
7.系统测试:把软件系统搭建起来,按照软件规格说明书中所需求,测试软件性能功能等是否符合用户需求,在系统中运行是否存在漏洞。(测试用例来进行测试)
8.验收测试:用户根据需要说明书来做相应测试,以确实软件达到效果。(需要谁提出来就是谁验收)
验收测试分类:1.(alpha)测试:一种前期的用户测试(内部测试)
2.(beta)测试:后期用户测试,(大型游戏公测)
四、软件测试的分类---软件测试的阶段(测试执行)
单元测试、集成、系统、验收。
五、软件测试的种类
1.白盒测试:基于软件内部设计程序实现(代码)
2.冒烟测试:冒烟测试的对象是每一个新编译需要正式测试的版本,目的是确认软件基本功能正常,可以进行后续的正式测试工作(基本功能的验证(主流程)局限性;集成测试之中)
3.功能测试:测试软件的功能是否符合需求,通常黑盒测试,一般是测试人员独立执行。
4.界面测试:UI测试,
5.回归测试:指修改了旧代码后,重复执行上一个软件版本中使用的过的测试用例,以确认修改没有引入新的错误或导致其他代码产生错误。回归测试的困难在于不好确定哪些内容应被重新测试。(系统测试阶段)BUG相关联的模块都要进行测试。
6易用性测试:测试软件是否易用,一般根据很多用户的测试反馈信息,才用评价易用性。
安装与卸载测试:测试软件正常、异常情况下的全新安装、升级、卸载过程。
7.(alpha)(beta)测试的区别:1.测试环境不一样 2. 前后期测试 3. a测试时模拟用户测试 ,B测试时真实用户测试
开发环境:开发人员编译代码的环境。
测试环境:测试人员模拟真实用户使用环境。
生产环境:用户使用环境。
CS架构:必须安装个客户端才能够用的软件。(QQ 微信、火车票出票系统 OQ)
BS架构:只需一个浏览器就可以访问服务。(爱奇艺在线直播、QQ空间)
比较单元、集成、系统测试的测试方法、考察范围(测试的重点)和评估基准(测试通过的依据)
单元测试:通常白盒测试(代码)单元测试对应模块内部发现错误,该模块能正常实现需求说明各个功能。该模块代码是否正确。
集成测试:将所有模块按照设计要求组装成为子系统来测试,通常是黑盒测试;修复所有发现的错误,测试结果通过评审。
系统测试:系统测试的目的是验证最终软件系统是否满足用户规定的需求。通常压力测试、安全测试、回归测试、界面测试、安装验收测试。各个模块功能和用户需要是否相符合,程序运行正常。
六、测试用例的方法
等价类划分-等价类划分法是一种典型的重要的黑盒测试方法,它将程序所有可能的输入数据划分成若干等价类(即输入域的子集合)。它一般分为有效等价类和无效等价类。
例微信红包发生金额最小0.01元,最大200元。
按数字划分:
有效:0.01-200 ; 无效:<0.01 >200;
按数据类型划分:
有效:数字;无效:非数字(!@##¥...)
边界值分析法:
对等价类划分法的一个补充,边界值一般都是从等价类的边缘值寻找,边界值分析思想:应选取正好等于、刚刚大于、刚刚小于边界的值作为测试数据。
边界值分析;微信红包0.01<=x<=200 ,
边界值为:0、0.01、0.02、199.99、200、200.01
错误推测法:总之就是进行错误的操作,验证程序是否对出错的场景和情况有应对能力,来选择测试用例数据。这个更多的是测试人员经验的总结。
因果图法/判定表法;
作业
投1.5元:C1 C3 11 12 A2 ;C1 C4 11 12 A3 ;C1 C5 11 12 A4
投2元:C2 C3 11 12 A2 A1 ;C2 C4 11 12 A3 A1 ;C2 C5 11 12 C4 A1
只投币:
C1 11; C2 11;
不投币按按钮:
C3 12;C4 12 ;C5 12
故11种情况。
场景法:一般根据业务流程的描述流程图分析基本流。分支流来列出来不同业务场景,作为测试用例的测试数据
基本流:正常操作流程
分支流:非法判断处理的
�L�