zoukankan      html  css  js  c++  java
  • 测试用例常用方法和选择原则

    定义:测试用例是为特定的目的而设计一组测试输入、执行条件和预期的结果,以便测试是否满足某个特定需求。通过大量的测试用例来检验软件的运行效果,它是指导测试工作进行的依据


    一、等价类划分法

    等价类划分是一种重要的、常用的黑盒测试方法,不需要考虑程序的内部结构,只需要考虑程序的输入规格即可。它将不能穷举的测试过程进行合理分类,从而保证设计出来的测试用例具有完整性和代表性

    等价类思考步骤:

    1、先确定有效和无效等价类

    2、有效等价类就是题目条件(两端的极值(边界值)要判断,中间随意一个值也要判断)

    3、无效等价类先划分与条件相反的情况,其它特殊情况(中文、英文、特殊符号、空格、空值)

    二、边界值

    具体测试用例思路:找到边界值和它两端的值,分别进行测试

    1、确定边界情况(输入或输出等价类的边界)

    2、选取正好等于、刚刚好大于或刚刚好小于边界值作为测试数据

    3、边界值的取值依据输入范围区间不同而有所不同,但是都需要把上点值、离点值和内点值取到(闭两边、开中间)

    边界值的方法小结:

    1、如果输入条件规定了值的范围,则应取刚刚到这个范围的边界值,以及刚刚超载这个范围边界的值作为输入数据

    如:两位加法器数的范围为-99 - 99,则应测试-99 -100和99 100

    2、输入条件规定了值的个数

    如:姓名要求1-20个字符,需要测试0、1、2个字符和19、20、21个字符

    某商品信息查询系统,每页最多显示10条商品信息,我们应该闪图商品信息使其能够查询出9、10、11条、1条、0条商品记录

    边界值和等价类区别:边界值分析不是从某等价类中随便挑一个作为代表,而是这个等价类的每个边界都要作为测试条件。它们是相辅相成的关系,配合使用

    三、因果图法

    因:输入条件  |   果:输出条件、输出结果

    适用于输入条件之间有相互制约、相互依赖的情况

    因果图中的符号:

    1、恒等:有因就有果,没有因就没有果

    2、非:有因没有果,没有因有果

    3、或:条件有一个是真,结果就是真,条件都是假,结果才是假

    4、且(与):条件都为真,结果才是真,一个条件为假,结果就是假

    利用因果导出测试用例需要经过以下几个步骤:

    1、找出所有的原因,原因即输入条件或输入条件的等价类

    2、找出所有的结果,结果即输出条件

    3、明确所有输入条件之间的制约关系以及组合关系

    哪些条件不能组合在一起,哪些条件可以组合在一起

    4、明确所有输出条件之间的制约关系以及组合关系

    哪些输出结果不能同时输出,哪些输出结果可以同时输出

    5、找出什么样的输入条件组合会产生哪种输出结果

    6、把因果图转换成判定表/决策表

    7、为判定表/决策表中的每一列表示的情况设计测试用例

    四、判定表法

    根据因果图来制作判定表(因果图可以不画)

    组成部分:

    1、条件桩:所有条件

    2、动作桩:所有结果

    3、条件桩:针对条件桩的取值

    3、动作桩:针对动作桩的取值

    书写步骤:

    1、列出所有条件和动作桩

    2、填写条件和动作桩的项目

    3、简化判定表

    注意:如果出现“-”代表此选项不影响最终结果

    五、场景法

    场景法就是模拟用户操作软件时的场景,主要用于测试系统的业务流程,分为基本流(正确流程)和备选流(错误流程)

    在冒烟测试时也主要采用场景法进行测试

    六、流程分析法

    流程分析法适用于有先后顺序的测试,常用于业务流程测试、安装流程测试等。每个流程就是一条测试用例,它只是在测试整体流程是否正确,细节还需要使用等价类、边界值等方法完善

    七、错误推断法

    凭着直觉和经验来设计测试用例,它是根据之前项目相关的bug数据总结来的

    八、正交表

    从全面试验中挑选出有代表性的点进行测试(均匀分散,整齐可比);高效率、快速、经济的方法

    作用方法:

    1、根据控件和取值当我选择一个合适的正交表

    2、列举取值并编号,生成取值表

    3、把取值表与选择的正交表进行映射

    混合正交表生成工具allpairs:

    很多情况下无法找到合适的正交表,就要使用正交表生成工具

    使用步骤:

    1、制作取值表(只列出数据即可,不用编号)

    2、复制取值表的数据,放到文本文档中保存(注意不要更改任何格式,例如文件叫Test2.txt)

    3、把文本文档放在allpairs文件夹中

    4、cmd进入控制台

    5、使用控制台命令进入allpairs文件夹中(cd目录路径)

    6、在控制台中输入 allpairs.exe Test2.txt>chenggong.txt(chenggong是自己真怕的名字,用来存放生成的组合用例,可以自动生成,不必提前建好)

     


     

    测试方法的选择

    在确定测试方法时,应遵循以下原则:

    1、拿到一个测试任务时,先关注它的主要功能和业务流程,业务逻辑是否正确实现,考虑使用场景法

    2、需要输入数据的地方,考虑采用等价类划分法,包括输入条件和输出条件的等价划分,将无限测试变成有限测试。要注意配合边界值法来做详细测试

    3、在任何情况下都必须采用边界值分析法,这种方法设计出的测试用例程序错误的能力最强

    4、如果程序的功能中含有输入条件的组合情况,则一开始就应考虑选用因果图判定表法

    5、对于参数配置类的软件,需要考虑参数之间的组合情况,考虑使用正交排列法选择较少的组合方式(最少的测试用例获得最大的测试覆盖率)

    6、对照程序逻辑,检查已设计出的用例的逻辑覆盖程序,如果没有达到要求的覆盖标准,则应当再补充更多的测试用例

    7、采购错误推断法再追加测试用例---依靠测试工程师的经验和智慧

  • 相关阅读:
    真机测试 iOS -- Coule not find Developer Disk Image
    XX
    Mac 控制 Mac
    在 mac 的 idea 中,查找 tomcat 解析 jsp 文件 后产生的 servlet 的位置
    mac idea 配置tomcat
    idea 普通Java项目转到web项目
    idea 新建java项目
    在mac上使用hexo和github创建博客
    解决git clone卡顿的一种思路
    10.【转载】nodeJS中读写文件方法的区别
  • 原文地址:https://www.cnblogs.com/nanjo4373977/p/13046944.html
Copyright © 2011-2022 走看看