发表于: 2018-03-16 20:04:02

1 1081


今天完成的事情:了解测试方法的分类以及测试方法

明天计划的事情:了解兼容性测试 ui测试

遇到的问题:黑盒测试与白盒测试的区别?脑容量不够怎么办?

收获:测试方法的分类

黑盒测试  白盒测试  静态测试 动态测试 手工测试 自动化测试

黑盒测试:就是在不深入解软件内部结构情况下展开的测试 测试输入到输出能不能得到预计结果

     输入》盒子》输出

黑盒主要测试什么:1是否有不正确或遗漏的功能?                               

                                    2在接口上 输入是否能正确的接受?能否输出正确的结果?                     

                                    3是否有数据结构错误或外部信息访问错误?(如数据文件访问的错误)                            

                                    4性能上是否能够满足要求?

黑盒的优点:容易实施 贴近用户的角度

黑盒的缺点:看不见内部逻辑,测试覆盖率较低

                        自动化测试,复用率较低 维护成本高

黑盒的测试方法:

等价划分法 将程序的输入数据划分若干等分,从中选取具有代表性的数据作为测试用例。每一类的代表性数据在测试等于这一类的其他值。

等价类划分可有两种不同的情况:有效等价类和无效等价类

有效等价类:是指对于程序的规格说明来说是合理的,有意义的输入数据构成的集合,利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能

无效等价类:不合理,没有意义的数据构成合集。

边界值分析法:关注的边界条件 对输入或输出的边界值进行测试 它是对等价类划分方法中的特殊

错误推测法     在测试程序时,人们可以根据经验或直觉推测程序中可能存在的各种错误(如特殊字符的处理 处理文件时考虑文件不存在 文件超大等特殊情况)从而有针对性地编写检查这些错误的测试用例的方法

因果图法       用图解的方法表示输入的各种组合关系,写出判定表,从而设计相应的测试用例

正交实验分析法 从数据中筛选典型的代表数据 主要筛选输入数据 在设计测试用例的输入输出

状态迁移图法   通过处理软件功能点里面的状态迁移关系来设计测试用例  软件审批的过程 

流程分析法     对流程的每一阶段、每一环节逐一进行调查分析,从中发现潜在风险,找出导致风险发生的因素,分析风险产生后可能造成的损失以及对整个组织可能造成的不利影响

白盒的测试:与黑盒相反,需要深入软件的逻辑结构与代码展开的测试

白盒中主要的逻辑单位:语句     保证每条语句执行一次 (判断覆盖 保证每个分支至少执行一次  )

                                   条件     覆盖到我条件的表达式 所以的表达式至少计算一次

                                   条件组合 所以不同条件下的组合情况

                                   路径     程序中每个可能的路径至少执行一次 

白盒的优点:迫使测试人员去仔细思考软件的实现 理解原理  

                   可以检测代码中的每条分支和路径

                   揭示隐藏在代码中的错误

                   对代码中的测试比较彻底

白盒的缺点:贵

                   无法检测代码中的遗漏路径和数据敏感性错误(程序猿少写一些代码逻辑,白盒检测不出)

                   不能直接验证需求的正确性

白盒的测试方法: 代码检测法  静态结构分析 静态质量度量法 逻辑覆盖法 基本路径测试法

白盒测试的测试方法中运用最为广泛的是基本路径测试法

基本路径测试法  是在程序控制流图的基础上,通过分析控制构造的环路复杂性,导出基本可执行路径集合,从而设计测试用例的方法

灰盒测试:介于黑、白盒测试之间,关注输出对于输入的正确性,同时也关注内部表现

静态测试:指无须执行被测程序 通过评审软件文档或代码 度量程序静态复杂度 检查软件是否符合编程标准 借以发现程序的不足 减少出现错误的概率

                (程序猿互审      小组走查程序或者文档       开会记录纪要 结果和输出结果的文档        )

动态测试: 运行程序,检查运行结果与预期结果的差异 分析运行效率 正确性和健壮性

手工测试: 由专门的测试人员从用户视角来验证软件是否满足设计要求的行为 更适合针对深度的测试和强调主观判断的测试(众包测试 探索式测试基本都是手工测试)

     

自动化测试:使用单独的测试工具软件控制测试的自动化执行以及对预期和结果进行自动检查(单元测试、接口测试、性能测试一般利用自动化测试手段)

手工测试优点:易发现缺陷  容易实施  创造性 灵活性

             缺点:覆盖量化难  重复测试效率低 不一致性 可靠性低  人力资源依赖

 

自动化测试优点:高效率 速度快 高复用性 覆盖率容易度量 准确 可靠 不知疲劳

               缺点:机械 发现缺陷率低 一次性投入较大




(真羡慕这些个大佬学的贼快 理解的也贼快 我这个萌新跟不上了 东西暂时消化不了了)

这样说吧,有个打孔机,类似这样。

纸条从盒子左方插入,从右方出来时,分别打出圆形、正方形、三角形三个样式的孔。

某天,打出来的纸条,只有一种图形。

黑盒测试员只能说:“这个打孔机坏了!”

灰盒测试员把打孔机的盖子掀开,发现打孔机的造型原来是这样的。于是他说:“机器仍能打孔,说明主机没坏;三个桩子也都是好的;但只打印出了圆形,可能因为连接正方形和三角形桩子的地方有问题。”

白盒测试员把机器拆开,查看内部的电线、电路、控制器等等,发现连接正方形和三角形的电线烧坏了,于是说:“原因找到了,换根电线吧。

(知乎上看的 挺有意思的 就拿出来分享了)




  





返回列表 返回列表
评论

    分享到