软件测试课程一些名词解释
一、软件测试的定义
学术派定义:
1.用来促进鉴定软件的正确性、完整性、安全性和质量的过程;
2.是一种实际输出与预期输出间的审核或者比较过程;
3.使用人工和自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别;
白话定义:
在规定的条件下对程序进行操作,以发现错误;也是对软件质量进行评估的一个过程。
二、软件质量的定义
软件满足规定或潜在用户需求的能力。具体地说,软件质量是软件符合明确叙述的功能和性能需求、文档中明确描述的开发标准、以及所有专业开发的软件都应具有的和隐含特征相一致的程度。
三、软件测试与软件质量(QA)的区别
质量保证(QA):主要工作是通过预防,检查与改进来保证软件质量。它所关注的是软件质量的检查与测量。着眼软件开发活动中的过程、步骤及产物,而不是对软件进行剖析进而找出问题。
软件测试:测试关心的不是过程的活动,而是对过程的产物以及开发出的软件进行剖析。测试人员要“执行”软件,对过程中的产物——开发文档和源代码进行走查,运行,以找出问题,报告质量。测试人员也必须假设软件存在问题,所以所做的操作都是为了找出更多的问题,而不仅仅验证每一件事是正确的。
四、软件测试内容
根据测试定义,测试贯穿于整个软件生命周期中。在开发的不同阶段,需要测试不同的内容。包括文档,源代码,数据等。
五、软件测试的目的
软件测试的目的就是发现软件中的各种缺陷;
测试只能证明软件存在缺陷,不能证明软件不存在缺陷;
测试可以使软件中缺陷降低到一定程度,而不是彻底消灭;
以最少的用例、时间和人力找出软件中潜在的各种错误与缺陷,通过修正各种错误和缺陷来提高软件质量,回避软件发布后由于潜在的软件缺陷和错误造成的隐患以及带来的商业风险。
六、什么是软件缺陷
满足下列五大规则之一称为软件缺陷:
软件未达到产品说明书标明的功能;
软件出现了产品说明书指明不会出现的错误;
软件功能超出产品说明书指明的范围;
软件未达到产品说明书虽未指出但应该达到的目标;
软件测试人员认为软件难以理解、不易使用、运行速度缓慢,或者最终用户认为不好。
七、软件测试的分类
按开发阶段来分:单元测试、集成测试、系统测试、验收测试。
按测试的实施单位来分:开发方测试、用户测试、第三方测试。
按测试技术来分:白盒测试、黑盒测试、灰盒测试。