软件测试工程师一定要会的用例设计思路

职场新人对测试用例的困惑无非有以下几点

1、什么是测试用例,为什么要写测试用例?

2、不知道怎么写,写了也不知道写的是否完整。

同时,在这我也准备了一份软件测试视频教程(含接口、自动化、性能等),需要的可以直接在下方观看 ,或者直接关注VX公众号:互联网杂货铺,免费领取

软件测试视频教程观看处:

软件测试工程师大忌!盲目自学软件测试真的会毁终生,能救一个是一个......

一、什么是测试用例?

测试用例是对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略。其内容包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等,最终形成文档。

简单地认为,测试用例是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,用于核实是否满足某个特定软件需求。

二、为什么要设计测试用例?

1、指导测试工作的进行

测试用例可以把产品需求转换为可操作的步骤【步骤、操作、输入、输出、优先级等】,

从而指导测试人员按部进行测试。

2、验证产品的需求是否合理

产品的逻辑关系会在用例设计时得到推敲验证,从而得出相应结论。

3、帮助评审需求,补充需求细节

编写测试用例时会考虑各种正常异常测试场景【逆向思维】、数据【边界值等】以及兼容性、性能等测试,会对这些细节部分的处理进行一定的补充与完善。

4、加深测试人员对产品的认识和印象

需求评审时可能用两个小时,讲了一个需要两百个小时投入的需求。大部分内容只是泛泛的讲解一遍,真整编写用例时,测试人员对需求一句一句的解读,从而转化成可执行的用例,这个阶段才是测试对需求认识更彻底的时刻。

5、便于测试负责人跟进测试进度

负责人根据用例的多少、复杂程度来评估相应的测试用例执行工时;以测试记录来评判测试过程的输出;从而跟进相应的测试进度与输出。

6、帮助发现拓展测试范围

用例设计是可以结合测试方法,从而拓展测试范围,不局限于双眼所看到的表面内容。

7、方便回归测试,复查BUG是否还会出现

回归测试时可以根据一轮测试的结果,重点复测出问题的用例以及功能,从而避免无序、无重点的回归测试。

8、测试结果可以体现测试通过率,作为产品质量评估

可以对测试结果进行统计,统计维度可以有:用例执行率、缺陷发现率、一轮测试通过率

9、培训新人,提高新人测试效率,节省对新人的指导时间

产品指导新人可以看PRD,开发指导新人可以看代码,测试指导新人看什么呢,当然是用例了。用例作为测试人员的核心输出,也是测试人员对产品知识的。

三、如何进行测试用例设计

测试用例设计分析是一个发散的过程,我们要考虑各种各样的场景、数据。

测试用例编写是一个收敛的过程,我们要把发散的思维转化为一条一条可执行的用例。

为了避免用例冗余、多、杂乱、重复、无效等问题,通常遵循以下原则进行用例设计。

从左到右,由上而下:

元素的布局,用户的操作,都是习惯"从左到右,由上而下",设计用例时同样遵循这样的原则。

面对一个需求或一个全新的功能模块,在进行用例设计时,为了避免测试对象丢失,用例设计混乱无序,我们遵从"从左到右,由上而下"的原则。依次对看到的测试对象进行用例设计,测试点发散,最终输出完整的测试用例。

按照上述原则编写的用例,覆盖所有可测对象,基本不会出现测试对象缺失,遗漏等现象。

但容易遗漏多测试对象组合的场景以及应用型测试场景。

从外到内,由点及面:

对于测试路径较深,链路较长的测试场景,我们遵循"从外到内"的设计思路,针对每一层测试路径上的对象,逐个进行设计。

再"由点及面"将路径整合,测试对象整合,以此来丰富场景型、应用型、组合型用例。

这样,遵循上述原则设计出来的用例,就包含了每一层级上的所有测试对象、每个路径上的所有测试对象、对象与对象的组合、路径与路径的组合,相对完善的覆盖了所有可测对象。

另外,再结合头脑风暴、用例评审等手段,不断促使用例的完整性与覆盖率达到相对较高的水平。

四、总结

PS:这套软件测试的自学教程合集, 对于在测试行业发展的小伙伴们来说应该会很有帮助。全套内容已经打包到网盘,内容总量接近500个G 。如需要软件测试学习资料,关注公众号(互联网杂货铺),后台回复1,整理不易,给个关注点个赞吧,谢谢各位大佬!

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

相关推荐
郝开2 小时前
Spring Boot 2.7.18(最终 2.x 系列版本)8 - 日志:Log4j2 基本概念;Log4j2 多环境日志配置策略
spring boot·单元测试·log4j
一晌小贪欢4 小时前
【Python数据分析】数据分析与可视化
开发语言·python·数据分析·数据可视化·数据清洗
Sunlightʊə6 小时前
2.登录页测试用例
运维·服务器·前端·功能测试·单元测试
Kuo-Teng6 小时前
LeetCode 160: Intersection of Two Linked Lists
java·算法·leetcode·职场和发展
dreams_dream6 小时前
Flask
后端·python·flask
mywpython7 小时前
用Python和Websockets库构建一个高性能、低延迟的实时消息推送服务
python·websocket
ZPC82107 小时前
FPGA 部署ONNX
人工智能·python·算法·机器人
一晌小贪欢7 小时前
Python键盘鼠标自动化库详解:从入门到精通
python·自动化·计算机外设·python鼠标·python键盘·python操控鼠标·python操控键盘
穿西装的水獭8 小时前
python将Excel数据写进图片中
开发语言·python·excel
xiaoxiongip6668 小时前
假设两个设备在不同网段,网关怎么设置才能通呢
网络·爬虫·python·https·智能路由器