python自动化测试理论2(自用)

因果图法

  • 恒等:若原因出现,则结果出现;若原因不出现,则结果也不出现
  • 非(~):若原因出现,则结果不出现;若原因不出现,则结果出现
  • 或(V):若几个原因中有一个出现,则结果出现;若几个原因都不出现,则结果不出现
  • 与(^):若几个原因都出现,则结果才出现;若其中一个原因不出现,则结果不出现
  • 互斥:最多有一个可能成立
  • 包含:至少有一个必须成立
  • 屏蔽:a屏蔽b;a出现时, b必定不会出现. a不出现, b不一定(a=1, b=0. a=0, b的值不一定)
  • 唯一:三个原因中有且只有一个成立
  • 要求:一个出现另一个一定出现(a=1,b=1. a=0, b无所谓)
    判定表:通过因果图分析最终得到判定表, 判定表里面写测试用例.

场景法

  • 用场景对功能点或业务流程进行描述的方法, 主要用于测试系统的业务流程
  • 在冒烟测试时也主要采用场景法进行测试

流程图法

python自动化测试理论2(自用)

错误推测法

  • 错误推测法是指利用直觉和经验猜测出出错的可能类型,有针对性列举出程序中所有可能的错误和容易发生错误的情况,它是测试经验丰富的测试人员喜欢使用的一种测试用例设计方法。

正交排列法

  • 正交排列法就是能够使用最小的测试过程集合获得最大的测试覆盖率
  • 正交表的概念
    一种特制的表,一般的正交表记为python自动化测试理论2(自用):
    n是表的行数,也就是需要测试组合的次数
    K是表的列数,表示控件的个数(因素的个数,或因子个数)
    m是每个控件包含的取值个数(各因素的水平数,即各因素的状态数)
    python自动化测试理论2(自用):
    有4个控件
    每个控件有3个取值
    9为需要测试的组合个数
    叫4因素3水平
    工具:正交设计助手

混合正交表

  • 混合正交表的水平数不同. 水平数不固定.
    工具及应用
    allpairs:
    1.在allpairs安装目录创建有对照表的txt文件如:python自动化测试理论2(自用)
    2.打开cmd进入txt文件地址
    3,输入:allpairs.exe 文件名.txt>输出名.txt
    即可创建有案列的txtpython自动化测试理论2(自用)

软件缺陷的定义

• 软件未达到需求规格说明书表明的功能
• 软件出现了需求规格说明书指明不会出现的错误
• 软件的功能超出了需求规格说明书指明的范围
• 软件未达到需求规格说明书虽未指明而应该达到的目标
• 软件测试人员认为软件难以理解、不易使用、运行速度慢、或者最终用户认为不好

软件缺陷的信息

• 为了便于缺陷的定位、跟踪和修改,要对所发现的缺陷,按照缺陷的严重程度、优先级、发现阶段、修复阶段、缺陷的性质、所属功能模块、系统环境等方面进行分类和统计
1 缺陷ID
唯一的缺陷ID,可以根据该ID追踪缺陷
2 缺陷状态
缺陷状态指缺陷通过一个跟踪修复过程的进展情况
3 缺陷标题
描述缺陷的标题
4 缺陷的严重程度
对软件产品的影响程度,分致命、较严重、严重、一般、低
5 缺陷的优先级
缺陷修复的先后顺序,即哪些缺陷优先修正,哪些稍后修正
6 缺陷所属模块
缺陷所属的项目和模块,要能较精确的定位至模块
7 缺陷记录者
提交缺陷的人员姓名
8 缺陷提交时间
缺陷提交的时间
9 缺陷处理人
处理缺陷的处理人
10 处理结果描述
对处理结果的描述,描述处理情况和代码修改说明
11 缺陷处理时间
缺陷处理的时间
12 缺陷验证人
对被处理缺陷验证的验证人(回测者)
13 验证结果描述
对验证结果的描述(通过、不通过)
14 缺陷详细描述
缺陷的重现步骤
15 缺陷环境说明
对测试环境的描述
16 必要的附件
如涉及到附件的或错误现象的图片等

缺陷的状态

• 1.提交 (Submited) 已提交的缺陷
• 2.打开 (Open) 确认“提交的缺陷”,等待处理
• 3.拒绝 (Rejected) 拒绝“提交的缺陷”,不需要修复或不是缺陷、重复缺陷、无法重现
• 4.修复 (Resolved) 缺陷被修复
• 5.关闭 (Closed) 确认修复的缺陷, 将其关闭
• 6.推迟 (Later) 可在以后解决,但要确定修复日期或版本

软件缺陷的严重程度

严重等级
5-Critical
系统瘫痪、异常退出、死循环、严重的计算错误等
4-VeryHigh
频繁的死机,系统大部分功能不可用
3-High
a.功能点没有实现,或不符合用户需求
b.数据丢失
2-Medium
a.影响一个相对独立的功能  b.仅仅在特定条件上发生
c.与产品需求定义不一致   d.断断续续的出现问题
1-Low
表面性错误(如错别字)

软件缺陷优先级

优先级别
5-Urgent
最高优先级。在这个错误影响下,系统几乎不可用
4-VeryHigh
高优先级。错误对这套系统的能力产生严重的影响
3-High
中优先级。如果这个错误存在与系统中,会制约开发和测试的活动的进行,如果先前没有修复它,那么需要在发布前修复它
2-Medium
低优先级。不会延迟发布,但是会在以后修正这个错误
1-Low
最低优先级。时间和资源允许时修正

缺陷的分类

系统缺陷
1.由于程序所引起的死机,异常退出
2.程序死循环
3.程序错误,不能执行正常工作或重要功能,使系统崩溃或资源不足不能执行正常工作或重要功能,使系统崩溃或资源不足
数据缺陷
1.数据计算错误
2.数据约束错误
3.数据输入、输出错误
严重地影响系统要求或基本功能的实现,且没有办法更正(重新安装或重新启不属更正方法)
数据库缺陷
1.数据库发生死锁
2.数据库的表、缺省值未加约束条件
3.数据库连接错误
4.数据库中的表有过多的空字段
接口缺陷
1.数据通信错误
2.程序接口错误
功能缺陷
1.功能无法实现
2.功能实现错误
严重地影响系统要求或基本功能的实现,但有合理的办法更正(重新安装或重新启动不属更正方法)
安全性缺陷
1.用户权限无法实现
2.超时限制错误
3.访问控制错误
4.加密错误
兼容性缺陷
与需求规定配置兼容性不符合
性能缺陷
1.未达到预期的性能目标
2.性能测试中出错,导致无法继续进行测试
界面缺陷
1.操作界面错误
2.打印内容、格式错误
3.删除操作未给出提示
4.长时间操作未给出提示
5.界面不规范
操作者不方便或遇到麻烦,但不影响执行工作功能的实现
建议
1.功能建议
2.操作建议
建议性的改进要求

开发人员拒绝修改的缺陷

• 程序员无法重现或者现象难以捕捉
• 没有明确的报告以说明重现缺陷的步骤
• 程序员无法读懂的缺陷报告
• 用户很少使用或者不符合用户使用习惯的操作出错
• 由不受信任的测试人员提出

缺陷修改说明

• 不是所有缺陷都会修改
• 市场的压力使得产品最终发行有时间限制
• 测试人员错误理解或者不正确操作引出的缺陷(FAQ)
• 错误的修改影响的模块较多,带来的风险较大(遗留)
• 修改性价比太低
• 缺陷报告中提出的问题很难重现