• 0
  • 0
分享
  • 这三种测试用例设计方法论,你都知道吗?——软件测试圈
  • 恬恬圈 2023-02-13 16:05:00 字数 1802 阅读 1280 收藏 0

  KYM

  KYM是Kown Your Mission的简称,顾名思义,就是帮助用例设计人员梳理测试任务的过程,它是一种系统的收集和整理测试启发的框架。

  在接触一些新事物或者面对一些新问题时,人们往往更关注问题本身,也就是what,而忽略了问题产生的原因(why)和途径(how),就像用例设计人员做设计时上来就直接写用例,即使是有丰富经验的测试大佬,也难免在直接写用例时遗漏一些测试点。

  因此作为测试人员更应该具备why=>how=>what=>when=>who的测试思路来更加深入地了解测试对象。

  KYM模型在实际用例设计过程中从用户、项目/产品、任务三个维度对测试需求进行提取分析。

  用户维度

  对于用户(Customers),重点关注以下几个问题:

  这个产品或特性是什么?

  用户提了哪些需求?需求是什么?

  用户为什么会提这个(些)需求?

  用户的痛点是什么?

  用户的实际使用环境是怎样的?用户打算如何使用?

  产品经理视角对该产品或特性的测试要求是什么?

  产品维度

  对于产品(Product),重点关注以下几个问题:

  友商对标产品或特性曾经发生过哪些问题?

  历史版本市场上曾经发生过哪些问题(品控分析)?

  历史版本内部测试曾经发生过哪些问题(内测BUG分析)?

  关于这个项目有什么需要特别注意的地方?

  有没有竞品分析结果或同类产品可供参考?

  任务维度

  对于测试任务(Mission),重点关注以下几个问题:

  测试环境是否可获得(测试拓扑)?

  是否有可参考的自动化测试脚本(自动化考虑)?

  是否有可参考的拷机工具测试脚本(自动化考虑)?

  哪些部分可以降低优先级或者先不测试(测试优先级)?

  MFQ

  MFQ模型主要从三个维度对测试对象进行分析,提取测试点:

  1、单一功能(MD-Model Based Discrete Function),即被测对象由哪些单一功能组成;

  2、功能交互(FI-Function Interaction),即功能之间有哪些复杂的功能交互点需要测试;

  3、质量属性(QC-Quality Characteristics),需要关注哪些非功能的质量属性方面的测试。

  单一功能(PPDS)

  单一功能的用例分析拆解主要使用基于PPDS主导特征选择测试模型,这种测试模型主要从四个维度/类别对测试对象提取测试点:

  参数类

  Parameter(参数)or Rule(规则):判定表。

  “参数值”的个数是有限的,可以通过遍历的方式来测试覆盖到。

  系统会对不同的“参数值”作出不同的处理或响应。

  对于一个测试点中存在多个参数并且不同参数之间可能存在一些依赖关系,这种情况需要在测试设计时将不同参数放在一起考虑。

  流程类

  Process(流程):流程图。

  有多个步骤,各步骤间有一定前后约束关系,所有步骤共同完成一件事情。

  整个过程可能涉及多于1个的执行者或触发者。

  将测试点分成一些步骤,会因为输入的不同而进行不同的处理,全部分析完成后,能够将测试点汇成流程图。

  数据图

  Data(数据):等价类和边界值。

  数据的取值是一个范围,通常不能用遍历的方式来测试覆盖。

  系统对允许输入的“数据”作出的处理或响应往往是一样的。

  状态类

  State(状态):状态图。

  涉及多种状态,最好是针对同一个对象的多个状态,否则把多个对象的多个状态都放在一个模型中表达,容易引起混淆。

  各个状态之间可以由于某种事件的发生相互转换。

  功能交互

  功能交互是指单功能和单功能之间、整个特性/系统与其他特性/系统之间可能存在着一些需要测试的交互的点。

  在进行功能交互设计拆解时,可以使用探索性测试的思路选择风险较高的场景进行测试,结合用户巡检数据功能组合库作为输入,进行典型行业市场常用功能组合/资源争用分析(分类树+正交分解法)。

  质量属性

  质量属性包括性能测试、可靠性测试、稳定性测试、兼容性测试、一致性测试、压力测试、可维护性测试等质量属性。

  针对某个单功能或者整个特性/系统,有些“质量属性”需要基于风险和基于测试策略进行测试,这部分后续主要通过导入质量属性专项测试方法进行优化。


作者:微橙    

来源:http://www.51testing.com/html/31/n-7789531.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • AI 智能客服几乎是每个业务网站的标配,在大型语言模型能力广泛被应用后,智能客服的实现变得更加轻易,可定制化的程度也更高。本篇内容,将指导你如何在几分钟时间内,使用 Dify 平台快速定制你网站的 AI 智能客服。即使非技术人员也能搞定!点击查看操作视频首先,你需要理解 Dify.AI 是什么?Dify 是一个开源且非常简单易用的 LLMOps 平台,让你能够可视化快速创建并运营 AI 应用的工具平台。 Dify 提供了可视化的 Prompt 编排、运营、数据集管理等功能。你甚至无需具备 AI 相关的技术研究和晦涩概念的理解。Dify 对接了各个出色的大型语言模型供应商,如 OpenAI、Az...
            0 0 1320
            分享
          • 摘要:你越早发现你代码里的问题,它们的影响越小并且花越低的成本去修复它们。因此,它有助于更早地在软件开发生命周期中推动测试活动——在流程时间轴上左移。这篇文章探索了左移方法,并告诉你在你的组织中如何着手左移。敏捷和开发运营团队对左移的混战是关于更早地在开发生命周期里移动关键的测试活动。很多测试活动在周期里发生得晚,它花费了更多的时间去定位问题,更多的成本去修复它们。当你在开发周期之后等待实施测试活动,特别你的非功能业务需求,比如安全和性能测试,如此基本地根深蒂固在你的代码里,以至于你实际能做的是给它们打补丁而不是恰当地修复它们。左移是关于更快地做这种识别和预防缺陷。发现并修复软件缺陷左移的测试...
            0 1 3064
            分享
          • 每个人再工作的时候最大的希望就是花最少的时间去做好事情,方便自己方便他人。最近有被一个实习生笑到,他发文件给我从来只是在企微上悄悄发送,发完之后没有任何一句话,也不口头留一句,即使他工位就在我的斜对面。三番五次之后,我忍不住跟他说了句,你每次发完文件不能跟我说一下吗?其实这样我无非就是想确认几件事情,这样我好开展后续工作:首先你把文件发给我了,肯定是需要我回应的,等同于把一件任务的接力棒传到了我这里,那如果因为消息太多我没看到,这项任务是不是就延迟了呢?其次,把文件发给我之后,我会稍微瞄一眼,大概回复他一个时间,比如几点看完可以双发一起沟通修改的地方。最后,很多时候打字沟通的效果肯定是远远不如...
            1 1 13443
            分享
          • 读者提问:成为软件测试,需要具备一定的逻辑思维能力吗 ?阿常回答:肯定要啊。周二一位读者朋友小明问阿常这个问题:小明测试零基础、想要转行做测试,他认为测试很简单,不需要敲代码,不需要理解业务逻辑。显然,他的理解是有偏差的。小白如何转测试?软件测试可分为两类,业务测试工程师(测试具体的业务需求)和测试开发工程师(研发工具或平台给前者使用)。软件测试工程师的职业规划前者肯定是需要理解业务逻辑的;后者则需要敲代码,并且是基于对业务逻辑的理解上敲代码。所以想要成为一名合格的测试,必须具备一定的逻辑思维能力。测试逻辑思维能力的应用测试人员的逻辑思维能力主要运用在以下三方面:需求分析与评审测试方案设计与评...
            0 0 928
            分享
          • 功能测试(Function test)输入正确的用户名和密码,点击提交按钮,验证是否能正确登录;输入错误的用户名或者密码, 验证登录会失败,并且提示相应的错误信息;登录成功后能否能否跳转到正确的页面;用户名和密码,如果太短或者太长,应该怎么处理;用户名和密码,中有特殊字符,和其他非英文的情况;记住用户名的功能;登陆失败后,不能记录密码的功能;用户名和密码前后有空格的处理;密码是否以星号显示;用户名和密码全不输入时和只输入某一项时的错误提示;登陆成功后是否在当前窗口打开页面。界面测试(UI Test)布局是否合理,2个testbox 和一个按钮是否对齐;testbox和按钮的长度,高度是否复合要...
            0 0 1363
            分享
      • 51testing软件测试圈微信