如何使我与QA的关系减少对抗?

时间:2009-09-17 13:08:48

标签: qa issue-tracking

在我的职业生涯中,我在QA方面取得了不同程度的成功。我承认我可以亲自接受错误报告,但通常当它们以自由形式制作时,其措辞更像是投诉:“这个过程仍然无效!”,没有足够的信息来重现缺陷。

我愿意研究我对批评的敏感性,但我也对将质量保证流程去个性化并鼓励提供信息性错误报告的工具和技术感兴趣。目前,通过电子邮件或有时通过走路和语言表达错误来报告错误。

任何工具都应该是:免费,如啤酒,易于安装/低管理。我也对博客文章,书籍或有关如何使自己对错误报告不敏感的文章持开放态度。

14 个答案:

答案 0 :(得分:10)

  1. 获取真正的错误跟踪系统。 FogBugz,Bugzilla,无论如何(我不是Spolsky的先例,但我会说FB是迄今为止我们测试人员最容易使用的系统,易于使用对他们来说真的很重要)。这些可以更容易地定义QA流程和错误报告工作流程。这应该有助于减少您与测试人员之间的个人互动。

  2. 不要亲自接受。我总是通过我们的错误跟踪系统和个人互动获得错误。无论他们的语气如何,我总是回答:“谢谢你抓住这个,我会调查它”。他们可能有一个糟糕的一天,你可能有一个糟糕的一天,谁知道?如果他们没有提供足够的信息来重现,并且他们没有提供足够一致的信息,请参阅#1(获得真实的工作流程并坚持下去)。

答案 1 :(得分:8)

忘记工具。这是关于沟通的。你需要有纪律的人告诉你到底出了什么问题,他们是如何到达那里的,以及导致这一事件的任何特定条件。当人们写出“它已经破碎”之类的东西时,你还需要能够提供反馈。开发和质量保证管理需要谈谈双方需要什么。

关于敏感性,我发现态度胜过一切。每当你看到错误报告时,你必须从“这不是个人攻击;这是一个解决问题和学习东西的机会。”的态度开始。一旦你设定了你的思维框架,您的回复将随之而来。

答案 2 :(得分:5)

我会把工具推荐给其他人,因为我们使用的不是“像啤酒一样免费”。

您的首要任务是确保培养脱离流程的能力。这不是个人问题。话虽如此,尝试与QA(个人或通过CoC)进行沟通,在bug报告中进行编辑会适得其反(“这个过程仍然无法正常工作!”,正如您所写,没有帮助)。该过程的目的是提高最终输出的质量。这种惊叹不会进一步实现这一目标。

答案 3 :(得分:5)

作为一名基本上是开发人员的QA人员(自动回归测试),我想我已经能够看到这个问题的两个方面。

正如其他几个人所说,这是一个沟通问题,没有工具可以解决它。诸如bugzilla之类的工具,提高了沟通的效率,但是他们仍然要求双方努力保持沟通渠道的畅通。

我已经看到开发人员经常在个人接收错误方面遇到麻烦,导致他们将其视为“不重要”,“Edge-cases”,“As-Intended”等,当问题实际上是一个问题时。即使问题实际上并不重要,简单地分享您对修复错误的风险/回报评估有助于促进更好的沟通。

相反,QA人经常忽略错误的细节和重现它的步骤(包括我自己)。当您作为开发人员遇到缺失的细节时,您的工作就是向我们询问更多细节(并请您及时地问我们)。最糟糕的感觉是当你写错误并将其发送给开发人员,然后几天没有收到任何回复,它会因“无法重现”而被关闭。

最后,关键是双方提示和善意反馈。如果我(在QA中)正在与开发人员合作,当我向他发送错误并且似乎很乐意帮助解决问题时,他总是会回应,我更愿意花时间给他所有细节。

答案 4 :(得分:3)

就像开发者一样,QA已经(或应该)遵守最低标准。在提出问题时,他们需要提供:

  • 可重复的测试用例;
  • 截图;或
  • 问题的描述以及任何不一致或其他不可再现的模式。

如果我必须去QA并询问问题是什么或者它们是如何产生的,我会生气。 “这不起作用”只是不够好。

在我开发的一个系统(Web报告系统)中,我在每个生成的报告上生成了所有输入数据。当QA运行报告并发现问题时,他们可以转到盲目URL并下载包含以下内容的ZIP文件:

  • 报告的定义;
  • 使用的模板;和
  • 任何数据库输入。

在开发方面,我编写了一个可以仅根据该ZIP文件重新运行报告的工具。这有几个影响:

  • 如果质量检查提出了问题,我可以说“拉出ZIP文件?”;
  • 一旦养成习惯,提出问题便容易得多;和
  • 开发人员重现和重新测试的问题是微不足道的。

效果非常深刻,我认为这突出了一个关键问题:当事情难以测试,难以复制等等时,开发人员不喜欢它。同样,QA人不喜欢任何能让他们的工作变得更加困难的人,他们喜欢任何能让他们更轻松的事情。

因此,我与QA和谐合作的建议归结为:

  • 使用问题跟踪系统。这是绝对的#1优先级。一切都需要审计跟踪;
  • 让负责该团队的QA负责人。他们可以解决质量保证问题中提供的详细信息不足的问题。而不是去每个测试人员,去找这个人,让他们按照自己的意愿处理。一方面,这应该导致一致的标准;
  • 为质量保证提供尽可能多的工具和诊断,使他们的生活更轻松。它也会让你的生活更轻松;
  • 不判断开发人员或QA的通过率。甚至不提供这样的统计数据。它们导致了对抗性而非协作性的环境。你是(或应该)所有人都在同一个团队中;
  • 每周在QA,开发和项目管理之间举行缺陷会议,以便在更宏观的层面上讨论最新,已解决和未解决的问题。这对于项目跟踪观点以及通常可以了解您可能遇到的任何重大问题或问题区域都很有用。

答案 5 :(得分:1)

在共同努力解决错误和/或分析错误时,我获得了绝对最佳的QA体验。程序员和QA工程师都不是最容易相处的人,这些团队之间存在着一些根本的紧张关系。

当我遇到针对我的代码提交的错误报告的问题时,请转到他们并询问他们究竟是什么意思,和/或指导我完成重现它们的步骤。很多时候问题是我阅读某些要求的方式不匹配,并且他们认为可行。你和人类一样,不是根据某些公式说话,而是你在一起解决(同意不同意并让其他人打电话是一种选择)。

在一些bugtracker中邮寄或归档的bug报告可能会让人觉得它的措辞令人反感,而且它肯定会因为它指向“你的宝贝”,你的创作。与提交错误的人交谈,你可能会注意到一个共同的目标:让世界/软件变得更好。

我对QA的态度得到了回报,因为它成了一种相互尊重的关系(虽然我们都不会承认:P),而不是尖叫'不是一个错误',我先走过去。而不是立即声称某事是一个错误,他们先走向我。最后,我们都在做我们的工作。它是程序员编写软件,QA工程师在该软件中编写漏洞。而且我非常感谢与一些非常聪明的人一起工作,告诉我我做错了什么。

哦,永远永远使用“这不是一个错误,这是一个功能”这句话。

答案 6 :(得分:1)

我同意保罗威廉姆斯的观点。这听起来像质量保证用于提交问题的过程应该得到改善。电子邮件和问题状态的口头沟通表明有改进的余地。我也同意他对发展和质量保证的建议,共同努力改进流程和沟通。我是QA工程师,现在已经做了10多年了。

你听起来非常成熟和很大的道具,不会炸毁任何人。可以写出“它还在破碎”的效果,但很明显,QA人需要学习更多的技巧。

我完全不同意AnthonyWJones发送的消息。我意识到每家公司都有自己的文化,但他表达自己的反应意味着“把它扔到墙上,质量保证负责质量,而不是我”的态度。没有什么特别的错误,但如果你想培养一个合作和亲切的环境,这没有任何帮助。更健康的文化是整个开发团队(包括质量保证)对质量负有同等责任的文化。

答案 7 :(得分:1)

阅读“与你合作会杀了我!”意识到人们只想度过一天,赚钱,回家。 “不要让小东西流汗。”

答案 8 :(得分:1)

去人格化的工具对我来说似乎是错误的方向。

  • 不要亲自拿东西
  • 要感谢他们在老板或客户找到问题之前发现了问题
  • 尊重测试人员;想一想他们在开发过程中添加了什么
  • 以可能更好的方式表达你的挫败感:
  “天哪,这真的很像   我们需要修复的重要错误。谢谢   为了找到它,伙计。

     

我很困惑   关于如何重现它。你有没有   有任何想法吗?或更多信息?“

  • 请记住,你是同一个团队:
  哇,你写的那个错误报告非常棒。它为我隔离了大量的时间。谢谢!

     

想出去喝啤酒吗?啤酒,如免费?

答案 9 :(得分:0)

我发现ti处理诸如“它不起作用”这样的陈述的最好方法是使用类似的简洁问题作为答复。 “谢谢,虽然你可以通过告诉你更多关于你发现的东西来帮助我吗?”然后把球留在球场上。

如果有人抱怨你没有回复,你可以指出你的要求获取更多信息。不要做别人工作,QA的职责是定义哪些具体不符合质量他们负责保证。

答案 10 :(得分:0)

您在工作的地方有分享点(或维基等)吗?在那里设置问题日志是非常容易的,所有人都可以免费查看。我不打算进入跟踪工具选择,那里有很多。如果你想要免费,请检查SourceForge或Codeplex。

最大的帮助就是绝对不要亲自接受 - 他们的工作和你一样。设置“可接受的”错误报告的格式会有所帮助,即使您当前正在使用的电子邮件也是如此。

至少应包括:

  • 缺陷的性质
  • 严重程度(通常1 - 5,1表示“无法继续”,5表示拼写错误
  • 重现的步骤。
  • 截图(如果有)。

任何体面的QA人员都应该这样做并测试脚本。

答案 11 :(得分:0)

尝试让他们更多地参与项目流程。我们定期进行回顾,让QA人员与开发人员保持同等的声音。他们经常建议我们改进流程的方法,使他们的工作更轻松,并使他们更容易确保质量。更重要的是,这些建议得到了辩论,并且(如果同意的话)被采纳。这使得QA和dev成为同一过程的一部分而不是相反的。

开发人员对其代码负责也很重要。如果QA在一个区域发现了很多错误,那么这是因为开发人员写了一个粗制滥造的工作。这不是因为QA很难。开发团队都应该认识到这一点。

答案 12 :(得分:0)

我不认为工具可以帮助你很多。

要求QA编写重现问题的步骤,最好从

开始
  • 运行应用程序
  • 点击...

这将构建他们的想法,并帮助您了解QA想要说什么。

答案 13 :(得分:0)

对我来说,作为一个远程团队成员,bug跟踪工具是不可避免的。根据我的经验,他们真的有助于“去个性化”这个过程。