为什么测试?1、对质量可接受性做出判断 2、发现问题
错误:mistake ,在程序中出现的错误称为bug
缺陷:是错误的结果,错误的表现
失效:当缺陷执行时会发生失效
事故:当出现失效时,可能会也可能不会呈现给用户事故
下面是一个测试生命周期模型,开发阶段,三次机会引入错误,测试阶段找出错误, 后三个阶段消除错误。
关于如何写好测试用例,参考https://blog.csdn.net/weixin_30363263/article/details/80385320
开发人员编写的文档,主要针对开发人员,强调的是结构信息,测试则是行为信息。S代表的是所描述的行为,P代表的是所实现的程序的行为。
规格说明和程序之间的“橄榄球”形状的区域这是“正确”的部分,而正确的部分是相对的概念。
接下来,新增的圆圈T代表测试用例,要思考的问题是怎样使得这些集合都相交的区域1尽可能的大。
如果特定测试用例对于未描述行为,则有两种可能:要么这个测试用例测试不当,要么规格说明是不充分的。
标识测试用例两种:功能性测试和结构性测试(黑盒和白盒)
功能性测试用例优点:(1)功能性测试和软件如何实现没有关系,如果实现发生变化,那么测试用例还可以用;
(2)测试用例开发和实现并行进行
缺点:(1)冗余 (2)未测试的软件漏洞
功能性测试只利用规格说明标识测试用例,而结构性测试用例使用程序源代码作为标识基础。
关于缺陷按严重程度的分类,数值越大越严重 1代表轻微 10代表容易传染,可扩展到其他系统的系统停机。