| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发测试 -> 你还不知道的测试用例相关知识 -> 正文阅读 |
|
[开发测试]你还不知道的测试用例相关知识 |
1、什么是测试用例
一组由前提条件、输入、执行条件、预期结果等组成,以完成对某个特定需求或者目标测试的数据,体现测试方案、方法、技术和策略的文档(XMind)。
2、为什么要写测试用例
科学有效的对测试步骤进行组织规划,方便管理,记录。
3、测试用例的管理过程
编写→评审(修改→再次评审)→执行→保存管理→维护/升级。
4、测试用例编写依据
软件需求说明书、软件模板。(蓝湖、脑图、项目wiki、SharePoint、与产品/交互/开发沟通)。
5、测试用例主要包含哪些内容
编号、日期、设计和测试人员、优先级、标题、目标、环境、输入数据/动作、预期结果。(XMind编写,一般由前提条件、输入、执行条件、预期结果组成)
6、设计测试用例的注意事项
从高到低,独立性,与功能一一对应,根据需求设计,由有经验的人员设计。
7、设计测试用例的原则
有模板、正确性、代表性、可判断性、重现性、详细准确清晰的步骤、符合规范;注意要简洁清晰,逻辑严谨,分类明确,可以让人一目了然所设计用例要测试的功能和目的。
8、用例的执行和管理
通过用例评审,开发提测后即可在Beta环境执行测试用例,对于未通过测试的缺陷在jira上创建bug,分配给相应的开发人员,开发修完bug后对用例进行验证,通过close,未通过reopen,同时也要对其他用例再测一测,以防开发提交变动代码时出现新bug。(缺陷管理软件:mantis、redmine、jira、bugzilla等)
? 9.对齐测试用例需求 首先、明确要完成的测试用例文档目标要求,模板、范围、粒度等。 用例文档使用者:测试人员 二、测试用例 例子测试用例的信息有很多,可以根据实际的情况进行增删,一般来说一个优秀的测试用例应该如下例子所示: 例如:假设目前测试中国移动互联短信网关是否能正确发送短信给中国联通互联网关,测试用例的设计如下:? (1)测试用例ID:TC000001 (2)测试用例名称:中国移动全球通手机用户成功发送短信给中国联通手机用户? (3)测试功能点:中国移动全球通手机用户成功短信给中国联通手机用户,中国联通网关返回成功的状态报告? (4)测试目的:? 三、测试用例的常用方法1、等价类 方法:根据需求列出输入,并对每一个输入的规则进行分析,然后对每一条规则进行正确和错误的罗列,最后将所有的输入进行正确和错误用例的组合,一条正确的用例尽可能多的覆盖每个输入的不同有效数据,一条错误的用例只能含有一个无效数据(控制变量)。对于一个输入应考虑它的:数据类型、长度、取值范围、是否可重复,是否为空(为空可分为不输入和输入空格),组成规则等内容 。 优点:简单高效,能快速评估测试用例数量; 缺点:只考虑了输入的有效和无效,对数据的组合比较随机,边界缺陷不容易发现 ; 适用范围:只在存在输入的需求都适用。 2、边界值 边界值分析方法的理论基础是假定大多数的错误是发生在各种输入条件的边界上,如果在边界附近的取值不会导致程序出错,那么其他取值导致程序错误的可能性也很小。 方法:对于存在边界的输入,取边界的上点、内点、离点进行测试。 上点:边界上的点 内点:边界内的点 离点:闭区间间靠近上点但在区间外的一点,开区间则是在区间内的一点 主要是用于对等价类的补充 优点:能更容易发现边界,更全面系统的测试边界上可能存在的问题; 缺点:只能作为一个对其他设计方法的补充; 适用范围:有输入参数且存在取值边界或长度边界时。 3、判定表 方法:确定输入和输出,列出所有的条件桩和动作桩;填入条件项;针对每个条件项计算并填入动作项;化简,合并相似的规则。 优点:能把复杂的问题按各种可能的情况一一列举出来,简明而易于理解,也可避免遗漏; 缺点:条件桩过多时,用例呈指数增长,且在合并相似的项时存在漏测的风险; 适用范围:多个输入判断条件存在逻辑关系,且不分先后的情况。 4、正交实验法 从大量的测试点中挑选出适量的有代表性的点,应用依据迦罗瓦理念导出的正交表,合理安排测试数据的方法 。 优点:用于考虑到所有的组合又使例数量最少 ; 适用范围:输入的参数之间是独立的,不存在相互依赖的关系。 5、流程分析法 流程分析法是将软件系统的某个流程看成路径,根据流程的顺序依次进行组合,使得各个分支都能走到;。 方法:画出流程图,确定测试路径,选择测试数据;构造测试用例; 优点:覆盖了输入,处理和输入; 缺点:覆盖的输入取值不多,需要对业务比较了解 ; 适用范围:流程比较复杂的情况。 6、状态迁移法 即有深度和广度的状态树 。 方法:画出状态迁移图;通过迁移图画出状态转换树;从转换枝推导出测试路径;编写测试用例 。 优点:保证每一个节点的所有可达状态都被测试到; 缺点:没有对不可达的状态进行测试的覆盖; 适用范围:从一个操作可以到达多个可能的操作或从一个状态可以到达多个可能的规定状态 且状态取值或输入变化有固定的要求顺序。 7、因果图 因果图提供了一个把规格转化为判定表的系统方法,且它最终生成的就是判定表。 方法:把大的系统规格划分成可以测试的规格片段;分析哪些是原因、哪些是结果;画出因图;把因果图转换成判定表;简化判定表; 优点:能帮助我们按照一定步骤,高效选择测试用例,设计多个输入条件组合用例;能考虑到多个条件组合起来可能出错的情况; 缺点:输入条件与输出条件的因果关系有时很难从SRS中得到,即便得到了也会因为因果关系复杂导致因果图非常庞大,从而使测试用例数目非常多; 8、输入域覆盖法 是一种综合的方法,综合了等价类和边界值等方法 9、输出域覆盖法 从输入结果倒推输入的测试方法 10、异常分析法? 主要是构造环境异常来看测试结果 11、错误猜测法 方法选择(打油诗,仅供参考): 所有输入选等价 给定范围加边界 条件孤立想判定 指定常量取正交 跨界操作流程法 多种状态迁移图 条件组合出因果 测试充分全覆盖 多种方法不唯一 软件测试基础巩固 软件测试入门到项目实战,7小时从小白到白领的软件测试快速入门课程 |
|
开发测试 最新文章 |
pytest系列——allure之生成测试报告(Wind |
某大厂软件测试岗一面笔试题+二面问答题面试 |
iperf 学习笔记 |
关于Python中使用selenium八大定位方法 |
【软件测试】为什么提升不了?8年测试总结再 |
软件测试复习 |
PHP笔记-Smarty模板引擎的使用 |
C++Test使用入门 |
【Java】单元测试 |
Net core 3.x 获取客户端地址 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/17 22:20:31- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |