| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发测试 -> 如何写好测试用例? -> 正文阅读 |
|
[开发测试]如何写好测试用例? |
怎样写好一个测试用例。作为我们部门的测试OG,我认真的做了一下总结,打算今天给大家做一次分享,希望能帮到各位测试新手们。 再分享之前,我认为聊一聊“为什么要写测试用例”非常重要。因为正是它的重要性决定的。 我认为,写测试用例的理由有5个,分别是为了: 理顺思路,避免漏测和重复测试 帮助预估测试排期,把控进度 方便bug回归验证 便于发现、记录并复现问题 标记测试结果,即对于测试结果有个交代 接下来,我们来说说“优秀的测试用例是什么样”的。好的测试用例,一般有这些特征: 包含基本信息 包括测试人/开发/产品/需求文档链接地址/技术文档链接地址 包括你测试过程中需要的物料 每一条用例,有很明显的突出测试预期和测试目的 所有用例都是可执行的 逻辑脉络清晰,几乎不存在重复的用例,简约而不简单 用例做到分级分层 待测功能点覆盖全面 说到这里,我还想要强调2个观点: 千万不要纠结测试用例的格式或形式! 也千万不要觉得测试用例写得越细越好! 有了以上基础,接下来才能够讲明白如何去写好测试用例,不,确切的说是写好测试方案。 一、基础信息 所以,基础信息至少要包含: 标题:【xxx】测试用例 新功能简介(或者需求目的目标) 参考资料 干系人 测试排期 上线时间 Bug提交地址 如果项目有 业务流程图 或者 系统框架图,也可以po到测试方案里面去体现,方便熟悉业务目的或者上下游系统间的依赖。 二、测试方法 根据需求的不同,又可以分为多种测试手段(手段) 最主要的: 功能测试 单元测试 性能测试 稳定性测试 兼容性测试 安全测试 UAT测试 根据测试项目的实际情况而定,比方说:你只是测试一个搜索框改了个默认提示文案,你就没必要去单独再去硬套模版测试性能了。 其实谈到写测试用例,大家更多的还是在写功能测试用例,所以这块重点讲。 功能测试用例,要做好分层设计(至少2层): 第一层:冒烟测试用例 第二层:常规测试用例 冒烟测试用例,其实也可以当作是 提测准入测试用例 以及 验收回归测试用例 这部分用例相当于P0级的测试用例,主要是为了保证主流程是完全走通的,如果走不通,则测试有权利打回给开发,让开发把主流程跑通后,测试再继续往下进行。 设计测试用例的时候,是有一些策略和方法可循的。 测试方法不必多言,掌握几种常用的黑盒测试方法即可: 等价类 边界值 场景法 判定法 正交试验法 因果图 状态迁移图 其中用得最多的,恐怕就是 等价类、边界值、场景法 了。 测试策略就比较有讲究,需要大量的测试实践,才能形成一套自己的测试策略。 我自己总结了几条: 1)二八原则:重点抓主流程进行测试,不过分钻牛角尖。 80%的问题,集中在20%的模块里 80%的Bug,由20%的开发者写出(日久见人心,你懂) 2)要模拟真实的用户场景,不要YY出来一个永远都不可能发生的场景。 3)相互依赖的服务之间,最容易滋生Bug。 4)金字塔原理编写法,可以自上而下或者自下而上,杜绝重复用例。 三、数据构造 很多人不注重数据的重复利用,每次测试,都花费大量时间在构造数据上。 但是假如你在些测试方案时,就把数据构造和数据构造的方法写上去, 包括一些SQL、表格数据、json数据、账号密码等等测试数据 当下次还有相同的测试场景时,可以翻一翻之前的测试方案,就不用再花费太多精力在构造数据上了。 写测试用例的五大注意事项: 第一步、明确测试范围 有些需求是多个部门一起合作的,可能会有多个测试和你一起分工合作。 你需要明确自己主要负责测试哪些地方,细化到功能模块。 这个时候,你应该明确两点: 你测试的模块到底依赖哪些其他模块 有哪些模块依赖你所负责测试的模块 设计测试用例的时候,把重点放在设计你自己负责的测试范围上; 对于有依赖的模块,也需要考虑降级和容错,也就是你要考虑,你负责的模块出问题了,对人家造成什么影响; 或者,人家负责的模块出问题了,对你所负责的模块有什么影响。 明确测试范围的2个好方法: 需求评审会一般产品会按功能模块去划分,分别评审,你需要和与你对接的产品和开发步调一致。 测前沟通,找开发和产品去做测试前的沟通,必要时,甚至要找关联的测试人员去做一次沟通,明确测试范围。 第二步、熟悉需求文档 需求文档至少要看三遍! 在你熟悉需求文档的时候,也相当于已经进入测试了,像一些公司美其名曰:文档测试。 产品经理写需求没想到的,你想到了,都可以大胆的提出来,要有质疑的精神。 另外这里还有一个小建议:尽量让产品经理把产品的流程图画上,流程图可以反映出数据流向是怎样的,这可比文字更加直观。 这样你会对整个需求文档有更深的理解。 第三步、熟悉开发文档 开发的系统设计文档、接口设计文档、数据库表结构,如果有的话,最好都看一遍。 第四步、设计和编写测试用例 现在大部分测试工程师手工测试都喜欢用Excel或者Xmind来编写测试用例。 Excel 比较适合用例较少、操作步骤简单、可能性有限、结果预期比较明确的功能。 Xmind 比较适合用例较多、功能相对复杂、结果预期比较多样的功能。 以下分别举两个使用场景: (1)假如说测app的话,个人感觉用Xmind可能会更合适, 用Excel的话,由于功能比较繁琐,可能用例条数会很庞大,一方面测试起来,看太多表格,容易头晕。另一方面维护起来也比较麻烦。 而Xmind可以只是把功能点写上,本身结构化的设计思维会让测试思路比较清晰,测试用例维护起来比较方便。 (2)对于上线后的回归测试验证点(CheckList),我们可以用Excel去表达,主要是针对主流程主功能的正向操作进行验证,逐条操作也防止漏测。 但其实用哪种软件编辑测试用例,都是看个人的使用习惯,关键是自己能看懂,别人也可以看懂就可以了。 设计测试用例时的,需要结合需求文档,把测试点罗列清楚,尽量用简洁的语句表述,非常忌讳写出过于啰嗦的用例。 另外,设计测试用例的几条思路我也简单介绍一下: 按模块把功能点罗列全,切记不要照抄需求文档,这样写不写有什么区别? 软件测试的基本测试方法要有效利用上,像边界值法、等价划分类、场景法等等,都是特别实用测试方法。 不要在细枝末节上纠结太多,根据二八法则,80%的bug都集中在主流程里面,要确保主功能主流程没问题。 第五、用例评审 测试用例设计完,一定要和产品研发一起评审测试用例,漏掉的测试点要及时补充。 文章来源:网络 版权归原作者所有 上文内容不用于商业目的,如涉及知识产权问题,请权利人联系小编,我们将立即处理 |
|
开发测试 最新文章 |
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/18 4:37:19- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |