美文网首页预见·软件测试技术
六天入门软件测试②——测试分析讲义

六天入门软件测试②——测试分析讲义

作者: 厲铆兄 | 来源:发表于2018-10-23 11:42 被阅读33次
image.png

Day 2 测试分析讲义

在第一天的内容里面,我们重点讨论了测试执行,也就是说别人分析好的测试,我们如何去执行,这是测试工作的第一步。那么如何更进一步呢,我们当然不希望只是从事最简单最基础的部分,也是希望有进一步的发展空间。于是,这一篇讲义就是来做第二步的讲解,做好测试分析,这样可以在分析的基础上去做软件测试。

本篇讲义解决的问题如下:

  • 对于指定好的具体功能,如何开始测试?
  • 对于指定的功能来说,测试要包括哪些范围?
  • 测试场景是怎么回事?

0 主要内容

  • 1 B1_需求分析
  • 2 B2_测试范围
  • 3 B3_测试重点

1 B1_需求分析

1.1 需求定义

需求,这个词应该是软件领域里面听到的最多的词汇之一。具体的表述有如下:

  • 需求,Specification,SPEC
  • 功能,feature
  • 新功能,new feature
  • 更新的功能,updated feature
  • 用户故事,user story
  • 故事,story

在敏捷(Agile)开发框架中,需求的标准说法是:用户故事,User Story。这里我们在禅道中有明确的页面。之前我们用了禅道“测试”模块的两个菜单:“Bug”和“用例”,今天我们讨论禅道的另一个菜单:“需求”。这个菜单在“产品”和“项目”中都有,但是只有在“产品”中可以创建,在别的地方只能查看。

image.png

我们打开“创建需求”的页面,可以看到如下界面(重点关注红色框选部分):

image.png

重点,其实就是框选的部分,需求(用户故事)的主要内容包括三个地方

  • 需求名称:用来说明要开发的功能是做什么的
  • 需求描述:用来描述,这个需要被开发的功能,具体是怎么回事
  • 验收标准:下面的文字来讨论,要说明如何通过验收

用户故事是描述对用户有价值的功能,好的用户故事应该包括角色、功能和商业价值三个要素。用户故事通常的格式为:作为一个<角色>, 我想要<功能>, 以便于<商业价值>。英文是As a <Role>, I want to <Activity>, so that <Business Value>.

  1. 角色:谁要使用这个功能。
  2. 功能:需要完成什么样的功能。
  3. 价值:为什么需要这个功能,这个功能带来什么样的价值。

来举两个栗子:

  • 作为注册求职用户,我想要查看最近3天发布的招聘信息,以便于我看到最新的招聘信息
  • 作为注册企业招聘用户,我想要查看最近一周更新的简历信息,以便于我查找到最新的候选信息

1.2 需求澄清

需求澄清的过程,就是需求明确的过程,整个行为为了满足两个要求:

  • 开发人员知道如何去开发这个需求,要达到什么样的效果
  • 测试人员知道如何去验证这个需求,要保证社么呀的标准

需求澄清一般是由项目经理主持,开发人员和测试人员共同参加并讨论确定结果的。需求澄清的产出就是:验收标准。

1.3 验收标准

验收标准,又称为AC。Acceptance Criteria。这个是需求(用户故事)最有价值的内容,因为AC决定了需求的完成目标。

标准,顾名思义就是要确定一个规矩,为需求描述的每一个内容细节做好确定。我们接着用上面的例子来展开说明。

栗子一:作为注册求职用户,我想要查看最近3天发布的招聘信息,以便于我看到最新的招聘信息

这个栗子,我们要确定的标准至少要包括以下几个内容

  • 是不是只有注册的求职用户才能够查看?
  • 如何知道是注册用户,那么要登录系统后才能查看么?
  • 最近3天发布,是怎么定义最近三天的?
  • 招聘信息是指招聘职位,还是招聘公司?
  • 这个功能的界面是什么要求?

栗子二:作为注册企业招聘用户,我想要查看最近一周更新的简历信息,以便于我查找到最新的候选信息

这个栗子,我们要确定的标准至少同样要包括以下几个内容

  • 是不是只有注册的企业招聘用户才能查看?
  • 企业招聘用户指的是哪类用户?
  • 这个用户需要登录系统么?
  • 最近一周是如何定义的?
  • 更新的简历信息需要显示什么内容?
  • 这个功能的界面是什么要求?

标准,就是对上面的每一个问号(?)做好回答,就形成了标准。类似于规章制度。

2 B2_测试范围

2.1 测试对象

测试范围,是测试分析的接下来的一个重要部分。在测试开始之前,软件测试工程师能够参考的内容,就是需求(用户故事),通过对用户故事中AC验收标准的分析,我们需要明确测试范围,列出来以下两个部分:

  • 该功能(用户故事、需求)中,需要被测试和验证的部分
  • 该功能(用户故事、需求)中,不需要被测试和验证的部分

这里的“部分”,就只得是测试对象。

测试对象主要包括两种:

  • 直观的:界面对象
  • 不直观的,需要分析的:业务对象

2.2 界面对象

界面对象,就是UI对象,指的是眼睛可以看到的,耳朵可以听到的,鼠标可以操作的(点击,左键,右键,中键,双击,拖拽等),键盘可以操作的(输入,删除,回车,空格,TAB等)

这些内容,要分析出来,哪些需要被测试,哪些不需要被测试。

2.3 业务对象

注意,业务对象是测试的重点,重点,重点的对象

业务对象,就是业务逻辑。这个可能比较难理解。指的是输入和输出的处理过程。例如发红包这个需求,业务对象就是:

  • 发红包之前的聊天窗口
  • 发红包的合法输入以后的操作结果
  • 发红包的非法输入以后的操作结果
  • 发红包以后的红包记录(95%的新手测试工程师会遗漏哦)

3 B3_测试重点

3.1 什么是点

测试重点,就是要重点,专注,花费主要的时间和资源去检查的“测试对象”的某一个细分的部分。还是以红包为例:

  • 重点一:红包金额的输入框
  • 重点二:输入金额后,金额显示的联动
  • 重点三:合法操作后的结果
    • 自己对话框
    • 对方对话框

3.2 为什么重

上面的“红包历史记录”为什么不是重点?因为,这个点不影响发红包的主要功能。所以重点,一定是影响这个需求(用户故事)的主要内容的点。

3.3 如何判定

那么如何判定,哪些是重点,哪些不是呢?

  • 用户常用的和用户看重的(产品经理会告知)
  • 最主要的功能:其实对应的是用户故事的(我希望有xx)
  • 和金额,交易,流程相关的
  • 按照经验,出问题比较多的地方:例如 权限
六天入门软件测试系列课程总纲
  • 相关学习

立师兄Linty:六天入门软件测试①——测试执行讲义

立师兄Linty:六天入门软件测试①——测试执行笔记

立师兄Linty:六天入门软件测试②——测试分析讲义

立师兄Linty:六天入门软件测试②——测试分析笔记

立师兄Linty:六天入门软件测试③——测试设计讲义

立师兄Linty:六天入门软件测试③——测试设计笔记

立师兄Linty:六天入门软件测试④——测试脚本讲义

立师兄Linty:六天入门软件测试④——测试脚本笔记

立师兄Linty:六天入门软件测试⑤——测试编程讲义

立师兄Linty:六天入门软件测试⑤——测试编程笔记

立师兄Linty:六天入门软件测试⑥——测试报告讲义

立师兄Linty:六天入门软件测试⑥——测试报告笔记

相关文章

网友评论

    本文标题:六天入门软件测试②——测试分析讲义

    本文链接:https://www.haomeiwen.com/subject/llgozftx.html