测试用例(还需要输入1个字)

近期机缘巧合,连续写2个项目的测试用例。第一个项目,纯属没有办法,参与该项目的现在就只剩我一个人了,只能自己写了,这不,我专门跑到客户那啥都不干,写文档写了2天;第二个项目,则是因为我在其中基本上打打酱油,只能做些鸡毛蒜皮的工作。虽然我自命不凡,觉得自己是全栈工程师,但别人不这么看,尤其是领导不这么看。不过,按照敏捷开发方法scrum的教程,其推崇多职能团队,即敏捷开发团队成员,每人都身兼数职,充当多种角色,比如既开发,又测试,还运维(哇塞,原来小公司的模式就是敏捷模式啊)。又比如,现在流行DevOps,说的是开发人员、运维人员、销售人员等大家通力合作,不分彼此,其实也有身兼数职的意思。

这么说,我还挺潮的。不过,技多不压身,50了,转型做测试也是一条出路。当然了,我不想做测试,写文档太枯燥了,感觉应该是AI干的活。

对于这两次写测试用例,有一些体会和感悟,记录如下:

一、测试用例的编写要求和思想

1、测试用例要写细

话说两个项目给的测试用例模板不一样,但貌似都有功能介绍,预期目标、测试步骤、测试结果,这是最核心的。测试用例是写给测试人员看的,是她们测试的时候的使用手册。写的时候,要假设测试人员对整个项目一无所知,只能按照我们写的测试用例机械地进行测试。因此测试步骤一定要写细,比如点击什么菜单,点击什么按钮,这个按钮在哪个位置,要写清楚。

2、测试用例的功能介绍简明扼要,只提一下其实现的功能就好,不要写太长。

因为测试人员是来测试的,不是来学习系统的,写得太长,她们要花时间去思考,没有必要。

3、测试步骤,是一种黑盒测试,注意是测试步骤,而不要写成功能介绍。

比如这样写就不对:

bash 复制代码
点击窗口左上角"导入"按钮,在弹出对话框中选择设备清单文件,点击"确定",可以 将设备清单导入数据库。

应该是这样写:

bash 复制代码
点击窗口左上角"导入"按钮,在弹出对话框中选择设备清单文件,点击"确定",成功将提示"导入数据成功",否则提示"导入数据失败"。

二、测试用例应与研制任务书、需求规格说明书一脉相承

测试用例针对的功能,需要与研制任务书、需求规格说明书保持一致。事实上,我在第一个项目上,到客户办公室写文档,是研制任务书、需求规格说明书、验收规程(测试用例)三个文档一起改/写的。其中,研制任务书要引用合同关于功能的描述和要求,而需求规格说明书和验收规程要引用研制书里的功能描述;这个所谓的引用,就是照搬,复制粘贴一份。

同时,需求规格说明书里要有需求跟踪矩阵和反向需求跟踪矩阵,将研制任务书里的功能和需求一一对应;而验收规程则有研制功能、需求、测试用例三者对照关系。如图

1、研制功能与需求的对照

2、研制功能、需求和测试用例对照

3、测试用例与需求用例对应

4、小结

按照课本,我们知道,系统生命周期可以分为规划、开发、运维、更新或消亡4个阶段。规划,是甲方的活,包括组织可行性研究,输出建设方案;合同签署以后,进入开发阶段,又细分为总体规划、需求、设计、实施、验收几个小阶段,那在总体规划,可以编制研制任务书,然后需求分析,输出需求规格说明书;设计阶段是设计说明书;验收阶段是验收文档,一脉相承。现在,在生产实践中,把理论串起来了,不再是抽象的背诵内容。

三、测试用例模板

两个项目的测试用例模板不一样,记录一下。感觉第一个专业一些。

1、模板一

2、模板二

四、总结

我在写第二个测试用例的时候,面对的是一个不太熟悉的系统。因为项目是基于别的项目组现成的代码的二次开发,我身为开发人员,对这个系统,有许多功能其实并不了解。因为要写测试用例,被迫每个功能都点了一下,结果发现,系统的功能很强大,做得十分完善,有些东西还让我惊艳。受到的益处像土匪一样浅薄。也许这个项目一路走来,有许多程序员在上面修修改改,其中有些代码写得不怎么样,符合屎山的定义。但毕竟,项目可以跑,没啥大问题,功能还很强大,有许多值得我学习的地方。这不,这两天我正好用上了测试时发现的功能,借鉴了代码,节省了时间,效果还挺好。

同时,在写测试用力的时候,因为要写得比较细致,对功能有了一些新的视角。所以,教科书上说,有些开发方法或模型,在需求分析阶段就写测试用例,其实也是有道理的。如果能将测试用例写出来,其实对功能的理解就十分到位了。用来指导开发,或者用于跟用户交流,都是不错的选择。

相关推荐
测试者家园13 小时前
ChatGPT生成接口文档的方法与实践
软件测试·chatgpt·测试用例·接口测试·接口文档·ai赋能·用chatgpt做软件测试
伯牙碎琴16 小时前
智能体实战(需求分析助手)二、需求分析助手第一版实现(支持需求提取、整理、痛点分析、需求分类、优先级分析、需求文档生成等功能)
ai·大模型·agent·需求分析·智能体
Byron Loong16 小时前
Python+OpenCV系列:【打卡系统-需求分析】需求大剖析,考勤革命开启!
python·opencv·需求分析
测试老哥19 小时前
Python自动化测试图片比对算法
自动化测试·软件测试·python·测试工具·程序人生·职场和发展·测试用例
测试者家园1 天前
ChatGPT接口测试用例生成的流程
软件测试·chatgpt·测试用例·接口测试·测试图书·质量效能·用chatgpt做测试
Theodore_10221 天前
3 需求分析
java·开发语言·算法·java-ee·软件工程·需求分析·需求
向上的车轮1 天前
软件需求分析常见误区(三),瀑布模型中需求分析遇到的问题
需求分析
互联网杂货铺1 天前
几个常见的Jmeter压测问题
自动化测试·软件测试·测试工具·jmeter·职场和发展·测试用例·压力测试
测试19982 天前
Chrome+Postman做接口测试
自动化测试·软件测试·chrome·测试工具·职场和发展·测试用例·postman
文火冰糖的硅基工坊2 天前
[创业之路-200]:什么是business(业务)?B2B, B2C, B2G业务, 什么是业务设计?
产品经理·需求分析·产品·创业·战略