不知道你们有没有这样的想法,为何别人的需求分析写的这么好呢?而本身写需求分析的时候老是脑壳瓜子都抓破了,还被老大批评?今天我就给你们讲一下——一个优秀的测试工程师如何进行需求分析呢?windows
好的测试工程师,须要有测试的思惟方式。浏览器
测试分析和设计能力,就是这种思惟方式最好的体现。服务器
接触过测试的人都应该清楚“测试需求分析”的重要性。就比如是建楼的地基,地基不牢,再好、再高的大楼均可能在顷刻间崩塌。工具
那么如何科学的进行测试需求分析呢?BAT乃至Facebook等国外的先进互联网公司的顶尖测试工程师又是如何进行需求分析呢?咱们常规的需求分析又有哪些不足呢?今天利用上班时间好好和你们一块儿聊一聊测试需求分析的那些事儿。性能
软件测试的生命周期测试
在讨论测试需求分析以前,我想跟你们明确一下软件测试的生命周期。不少朋友对整个测试过程的周期不甚了解,致使测试工做混乱不堪,名有明确的思路。这样是不管如何都不能作好软件测试工做的。设计
测试需求分析:从产品需求挖掘出咱们须要的测试需求cdn
测试设计:根据测试需求,设计测试方案和测试用例对象
制定测试计划:根据项目实际安排人员周期blog
执行测试:依照测试计划,执行测试用例
质量评估:提交Bug,提交测试报告
为何要作测试需求分析?
举一个现实生活中你们常常用到的例子。生活中可能常常有人这么问你:我想买台电脑,有什么推荐么?那么咱们是否是须要问这么几个问题:买来干吗的?台式机仍是笔记本?你预算多少啊?对系统有啥要求么?
只有这些问题咱们都明确了以后,咱们才可以帮忙去推荐。也就是说,经过这些问题,咱们才能了解对方的需求。一样,咱们作测试工做,产品需求并不等于测试需求,若是没有测试需求分析,就会致使咱们对产品了解不完整、不许确,对产品的测试也会不透彻。因此,测试需求分析是必不可少的环节。
如何进行测试需求分析呢?
分析任何一个事物,咱们都须要一个分析对象,一样测试需求分析首先要有一个分析对象。做为测试需求分析的对象,通常有这么几种形式:产品需求文档、交互稿、技术文档、会议纪要等其余参考资料。根据这些资料文档,咱们从测试的角度进行分析。
产品需求文档
交互稿
技术文档、会议纪要等其余参考
在测试需求分析的过程当中咱们须要用到一些思惟导图的工具,帮助咱们从广度和深度更加直观的去分析需求。他能够把咱们整个的思考过程层次化、结构化的表达出来。思惟导图的工具备不少,在这里主要跟你们分享、比较下北月用过的几个,孰优孰劣,你们本身去判断。
分析结果也有多种的表现形式,以最开始买电脑的故事为例,能够变现为:
将这些肯定的条件合起来,咱们就能够获得买电脑的需求。
测试需求分析的类型(从广度上分析)
测试需求分析的类型其实你们也再熟悉不过,你们能够参考清流的文章"这样考虑测试点,作个合格的测试工程师",在这里北月很少说。
举个栗子
接下来咱们以“网易云课堂”的一个小功能为例,从功能、性能、兼容性方面简单的实现测试需求分析。下图是网易云课堂一个功能的交互稿:
那么测试需求是什么呢?
首先咱们先考虑功能测试测试点:须要分析用户参加课程的行为,可能会出现哪几种状况?用户是否登陆?参加课程是否成功?参加课程失败的缘由多是什么?
在这里须要注意,在需求文档、交互稿里没有明确的状况须要咱们测试人员发散思惟去考虑到而不是由于需求文档没有明确而不考虑。
其次咱们考虑性能测试需求。通常性能测试的需求不会明确表示在需求文档和交互稿里面,须要咱们去和产品、开发沟通,依靠咱们的经验去明确。好比说,上万用户同时参加某个课程,是否是会出现有人没法参加课程的状况?程序响应速度会不会变慢?会对服务器产生哪些影响?所以性能测试需求,咱们要对大量用户同时参加课程进行测试;那么咱们想到,参加课程须要用户提早登录,所以咱们还要对大量用户同时登录进行测试。
接下来是兼容性。咱们知道目前市面上的手机有不少品牌,但手机系统主要分为Android和IOS,还有少部分的windows;PC系统主要有windows、mac和Linux;浏览器主要有火狐、谷歌、IE等。
咱们首先要确认,咱们的系统目标是要支持那些系统?哪些平台?哪些浏览器?而后根据系统目标去考虑兼容性的测试内容。
如今,对于测试需求分析,你们有没有大概的了解呢?欢迎你们跟我一块儿交流测试方面的问题哦:672899761。