软件测试:Soft ware testing
定义:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量并对其是否能满足设计要求进行评估的过程。
测试理论:
是使用人工操作或者软件自动运行的方式来检验它是否满足规定的需求或弄清预期结果与实际结果之间差别的过程。【它是帮助识别开发完成(中间或最终版本)的计算机软件(整体或部分)的正确度correctness、完全度completeness和质量的软件过程是SQA(software quality assurance)的重要子域。
Glenford.J.Myers对软件测试目的提出的观点:
1、测试是为了发现程序中的错误而执行程序的过程。
2、好的测试方案实际有可能发现迄今为止尚未发现的错误的测试方案。
3、成功的测试是发现了至今为止尚未发现的错误的测试。
4、测试并不仅仅是为了找出错误,通过分析错误产生的原因和错误发生的趋势,可以帮助项目管理者发现当前软件开发过程中的缺陷,以便及时改进。
5、这种分析也能帮助测试人员设计出有针对性的测试方法,改善测试的有效率和有效性。
6、没有发现错误的测试也是有价值的,完整的测试是评定软件质量的一种方法。
7、根据测试目的不同,还有回归测试、压力测试、性能测试等,分别为了检验修改或优化过程是否引发新的问题,软件所能达到处理能力和是否能达到预期的处理能力。
测试原则:
1、测试应该尽早进行,最好在需求阶段就开始介入,因为最严重的错误不外乎是系统不能满足用户的需求。
2、程序员应该避免检查自己的程序,软件测试应该由第三方来负责。
3、设计测试用例时应考虑到合法输入和不合法的输入以及各种边界条件,特殊情况下还要制造极端状态和意外状态。如:断 、模拟突然断电等。
4、应该充分注意测试的群集现象。
5、对错误结果要进行一个确认过程,由A测试出的错误由B来确认。严重的错误可以召开评审会议进行讨论和分析,对测试结果要进行严格的确认,是否真的存在这个问题以及严重程度等。
6、制定严格的测试计划,要有指导性。测试时间安排尽量宽松,不要希望再极短的时间内完成一个高水平的测试。
7、妥善保存测试计划、测试用例、出错统计和最终分析 告,为维护提供方便。
测试目标:
1、发现一些可以通过测试避开的开发风险。
2、实施测试来降低所发现的风险。
3、确定测试何时可以结束。
4、在开发项目过程中将测试看作一个标准项目。
测试对象:
1、程序 2、数据 3、文档
测试过程:
1、对要执行测试的产品/项目进行分析,确定测试策略,制定测试计划。
2、设计测试用例,设计时要根据需求和策略进行。进度压力不大时设计要详细。如进度、成本压力大时,要保证覆盖关键性的测试需求。
3、如果满足“启动准则”(Entry Criteriu)那么执行测试。执行测试主要是搭建测试环境,执行测试时要进行进度控制、项目协调等工作。
6、书写测试 告,对测试进行分析总结经验。
心里依据:
1、程序测试的过程具有破坏性。
2、程序员应当避免测试自己的程序。
3、程序设计组织不应该测试自己的程序。
测试分为黑盒测试和白盒测试
黑盒测试:黑盒测试也称功能测试;它是通过测试每个功能是否都能正常使用
白盒测试:白盒测试又称结构测试,透明盒测试、逻辑驱动测试或基于代码的测试
灰盒测试:是介于白盒测试和黑盒测试之间的一种测试,灰盒测试多用于集成测试阶段,不仅关注输出、输入的正确性,同时也关注程序内部的情况。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!