美文网首页
一次跟进bug的经历说明为什么要验收用例驱动开发

一次跟进bug的经历说明为什么要验收用例驱动开发

作者: circle_hyy | 来源:发表于2019-02-12 12:15 被阅读0次

背景
年前我负责的工作基本完成或者暂停了,于是临时协助另一个同事,当时这个项目已经在测试阶段,是需要根据用户提交的信息提取属性值(如年龄、性别、籍贯、地址、公司、职业等,我们称为变量)。
需求
将用户输入的详细地址中的省、市、区、街道取出来并分别给这四个字段赋值。
问题
产品没有对处理规则和特殊情况做详细说明。
通过Code Review发现实现方式是简单粗暴的直接对地址做切割,开发同学估计没有考虑这么多情况,所以决定先通过简单冒烟确认一下大致问题。
进入测试
1 输入【广州市天河区珠江东路18号】(部分地址不全)
结果:省市区街道四个字段都为空
2 输入【广东省-广州市-天河区-珠江东路18号】(带其他符号)
结果:省市区街道后面都带上了-
跟开发大致描述了问题,修复和提交后进行第二次测试:
1 输入【北京市北京市朝阳区人民东路16号】(对直辖市来说会有两个市的情况)
结果:省份为空
2 输入【广西壮族自治区/南宁市/马山县/人民东路16】(省份的结尾不一定为省)
结果:省份广西,城市南宁市,区为壮族自治区马山县
3 输入【珠江东路16号/天河区/广州市/广东省】(顺序错乱)
结果:城市为空
这时候我已经不想一个个场景测出问题后再让开发改了,因为产品没有明确提出想要的效果,而且开发没有想到可能会出现的情况,每次修改都可能需要重构那部分代码,这样的效率和质量都很低。我想到一个方式,我们可以把验收用例整理给开发,开发直接根据我们提供的场景和预期情况设计实现方式。于是我和另一个同事一起给出了一些场景和预期结果,比如带符号的、地址位置错乱的、地区有缺省的、直辖市的地址、自治区的地址等。开发同学结合会出现的情况设计了较合理的实现方式,结果当然是高效高质量地完成这部分工作。
当然,这种情况的正确处理应该是产品给出明确的提取规则,但是这种需求比较特殊,产品只提出需要什么数据,具体的处理逻辑可能并没有考虑,这时候我们需要推动产品给出明确规则。在测试中发现有出入的逻辑问题时,需要产品、开发、测试坐在一起讨论出结论,最好不是由开发或者测试定下规则。但是验收用例驱动开发给我们提供了一种思路:当开发明确知道验收用例的时候,他能在编码时将需要处理的情况补充上,这时候代码质量是比较高的,相比后期测试时再进行调整,成本也较低。一份完整、准确的验收用例甚至可以代替需求文档。

相关文章

  • 一次跟进bug的经历说明为什么要验收用例驱动开发

    背景年前我负责的工作基本完成或者暂停了,于是临时协助另一个同事,当时这个项目已经在测试阶段,是需要根据用户提交的信...

  • 用实例解读敏捷QA实践

    篇前话 经历过传统的软件测试工作,每天的任务就是写测试用例,跑测试用例,改测试用例,报bug,验bug。测试用例和...

  • 工作心得

    由于最近一次的迭代比较庞大,问题比较多,因此有时候发现bug都是直接丢给开发,没有记录在bug管理工具中,然后到验...

  • android开发单例模式和Rxjava组合bug

    android开发单例模式和Rxjava组合bug 纪录一个关于单例模式和Rxjava组合使用的bug。项目中关于...

  • 腾讯Xlog接入指南与踩过的坑

    一 为什么要接入日志打印系统? 相信大家在开发应用的时候,总会遇到bug,这个时候,如果bug是在我们本地开发的过...

  • 2019-05-16

    1、广州线下课详细安排说明 2、跟进开发项目

  • 软件测试的基本流程

    软件测试流程: 1、制定测试计划 2、编辑测试用例 3、执行测试用例 4、发现并提交BUG 5、开发组修正BUG ...

  • React 现代化测试

    测试的动机 测试用例的书写是一个风险驱动的行为, 每当收到 Bug 报告时, 先写一个单元测试来暴露这个 Bug,...

  • 技术开发流程

    目前团队的开发模式还是基于传统的瀑布开发模式,整体开发流程涉及需求评审、测试用例评审、技术架构评审、开发与测试、验...

  • Android 单元测试第二篇(参数化测试)

    通常我们要验证一个方法是否正常,需要用到多组测试用例,当然就算全部测试用例通过了,也不能说明这个方法没有 bug。...

网友评论

      本文标题:一次跟进bug的经历说明为什么要验收用例驱动开发

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