大多数人都认为软件质量很重要。 我们已经看到了在各种情况下的错误软件的结果:从火星探测器故障和执行致命剂量辐射的化学疗法机器到经历级联故障的电信系统。 假设软件测试人员将是开发团队的重要成员,这似乎是合乎逻辑的。 可悲的是,情况并非总是如此。

一些软件开发人员,产品所有者和管理人员认为,质量保证(QA)工程师是想成为开发人员并且缺乏成功所需的技能或勇气的人。 不幸的是,有一些测试人员符合此描述,但是大多数测试人员都是真正关心他们所测试产品质量的人。

为什么测试人员的声誉如此差? 通常,这是因为他们在职业生涯中养成了不良的习惯。

本文将概述QA工程师应积极避免的7种习惯以及取代它们的良好习惯,以确保QA工程师从事高质量的工作并赢得同行的尊重。

不良习惯1:测试您不了解的事物

我们都去过那里:JIRA板上有一个晦涩的故事,其中涉及一些遗留的后端代码,而且没有人完全确定代码的作用或更改方式。 负责该故事的开发人员已经进行了足够的研究来修复代码,但没有在故事中提供有关其工作方式或所做的任何更改的任何细节。 开发人员对您说:“只需在此服务器上运行此请求,如果收到此响应,则此请求已修复。”

这是此方案的问题:您如何知道开发人员是正确的? 如果问题没有得到解决,并且生产出现故障,那么您的经理将与您联系并提出问题。 您是否真的要唯一的回答是“开发人员叫我这样做,而且奏效了,所以我把故事搬到了完成”?

好习惯:问问题。 请您的开发人员向您解释该功能的工作原理以及进行了哪些更改。

继续问清楚问题,直到您真正了解正在发生的事情。 在这样做时,您可能会提出开发人员未曾想到的要点,然后将它们发回去改进他们的工作。

软件开发人员正在不断学习 ,您也应该如此。 听播客和阅读博客文章,以跟上最新的技术趋势和测试策略。

不良习惯#2:仅测试故事告诉您的内容

我们的开发案例通常包含接受标准(AC),该标准准确概述了新功能或修复的行为方式。 这些通常由产品所有者,有时由开发人员编写。 AC是有帮助的,并且肯定比根本没有AC更好,但是它们通常仅包含“ Happy Path”场景。

即使开发人员编写了AC,它们也可能不包含可能隐藏错误的测试场景,这不是因为它们试图使人为重复,而是因为这些场景可能没有发生。 测试人员通常会假设开发人员最了解,并且只会测试AC。 这意味着可能有一些关键区域未经测试,而漏洞则未被发现。

好习惯:跳出框框思考。 我们作为质量检查工程师的技能之一就是能够思考可能出了什么问题; 我们需要在测试的每个故事中使用此技能。

在您签署AC之前,请问自己:“我还能考虑在这里进行其他测试吗? 有什么我想念的吗?” 这通常可以帮助您在其他人没有想到的领域中发现错误。

不良习惯#3:假设奇怪的行为是正确的行为

通常,在测试新功能时,我们会遇到没有意义的行为。 也许是页面刷新异常,或者是导航到我们未曾期望的地方。 或者也许在我们没想到的地方出现一个按钮。

当我们在截止日期进行测试时,很容易将重点放在故事的交流上,以至于奇怪的行为被抛诸脑后。 我们可能会告诉自己:“完成这个故事后,我会问开发人员。”(然后我们忘记了),或者我们说:“好吧,我确定她知道自己在做什么; 可能应该这样做。”

好习惯:倾听自己的直觉。 如果行为很奇怪,则最终用户很有可能也会发现它很奇怪。 他们甚至可能会感到沮丧,以至于他们停止使用该应用程序。

我们需要记住,最终用户是我们的客户。 我们是确保他们对我们的应用程序具有良好体验的最后防御方法。 如果您的直觉告诉您某些事情不正确,请记录测试内容并说出您所看到的内容。

不良习惯#4:追逐兔子洞下的东西

这与“不良习惯” 3相反。 有时,质量检查工程师会如此专注于发现应用程序中的每一个错误,无论它多么微小,以至于他们陷入“分析瘫痪”,并使团队的工作停顿下来。

我记得曾经问过一位质量检查工程师,她在职业生涯中发现的最喜欢的错误是什么。 她兴奋地告诉我一个错误,该错误涉及多次单击一个按钮,在一对页面中前后导航,然后在一个特定的浏览器中快速滚动。

尽管我确信可以轻松解决该错误,但它涉及到用户永远不会做的行为,并且该错误本身并没有特别有害。 我想知道在尝试重现这一晦涩的问题时,她还能找到多少其他实际问题。

好习惯:关注真实的用例。 永远记住,我们的重点应该放在确保我们的软件对我们的用户运行良好,并且我们的软件受到良好保护,免受恶意用户的侵害。 我们不仅在寻找狩猎乐趣的虫子。

如果您发现自己陷入困境,请问自己是否可以花更多时间测试更实际的用例。

坏习惯#5:为实现自动化而进行自动化测试

学会了如何编写自动化的QA工程师发现,自动化事物很有趣。 解决技术难题并自动观察测试运行会带来一定的冲动。

但是自动化并不总是答案。 当我们有一个新功能要测试时,重要的是要花一些时间并通过实际使用该功能来像最终用户那样了解该功能。 当我们在完成自动化之前跳入自动化阶段时,我们可以结束无法很好地利用该功能的自动化测试。

我们也可能会错过关键功能。 例如,如果我们有一个新的搜索功能,可以按日期范围进行搜索,那么自动化工程师可能会花所有的时间弄清楚如何使用Selenium测试软件来选择日期,而永远不会注意到输入的开始日期可能是结束日期之后。

好习惯:花时间做手工的探索性测试以了解功能。 询问有关如何使用该功能的问题。 考虑一下最终用户将要做什么。 找到尽可能多的错误。 然后,开始考虑如何使它自动化 。

不良习惯#6:创建复杂且不稳定的测试

当我第一次学习如何使用Selenium自动化用户界面(UI)测试时,我像手动测试一样将它们自动化。 我的测试有很多步骤和隐式等待。 测试所包含的步骤越多,某个测试步骤就会失败,从而导致整个测试失败。 隐式等待是不可靠的,因为等待设置的秒数不能保证该元素在该时间内将变为可用并可以单击。

因此,我的测试异常脆弱。

每天早上,当我上班时,我检查一下哪些测试失败了,然后重新进行所有失败。 然后,我将修补第二次失败的测试,以查看是否可以使它们正常工作。 这是我的时间的巨大浪费。

好习惯:请记住,自动化的目的是使您的工作更轻松,使您有更多的精力进行更多的探索性测试。

自动化测试应该很简单,每个测试仅检查一件事。 查看您的UI测试,看看是否可以使用API​​测试将其自动化 。 应用程序编程接口(API)测试比UI测试更快,更可靠,因为它们不依赖浏览器的响应。 当需要进行UI测试时,请确保使用显式等待而不是隐式等待来减少松脆感。

不良习惯#7:接受不良的用户体验

有时,当我们在截止日期前工作并且要测试许多故事时,我们仅关注功能的功能。 如果该功能有效且没有错误,我们将其称为完成并继续。

但是记住最终用户很重要。 如果用户不理解该页面上的操作或发现他们必须单击几次才能完成某项操作,他们会感到沮丧,并且不想使用该产品。

最近,当我被要求填写调查表时,我看到了一个例子。 我被问到的问题需要很长的答案,但是调查领域是如此之小,以至于我一次只能看到一行,因此很难输入和校对我的输入。 我敢肯定,测试产品的质量检查工程师已验证可以键入该字段并且该条目已保存,但是他们没有考虑使用它将有多困难。

习惯:测试应用程序时,请始终想到最终用户。 从产品负责人那里了解预期的工作流程是什么,并贯穿这些工作流程。 问问自己,如果您是最终用户而不是测试人员,您会对产品的行为有何看法。 如果这种行为会让您感到沮丧,请倡导改变行为。

记住为什么要测试

在我们作为测试员的日常工作中,很容易因截止日期和技术挑战而分心。 我们擅长于关注软件的细节,这就是为什么我们擅长于发现错误。 但是我们绝不能忽略我们公司存在的原因:创建人们将使用的软件。

我们所有任务的最终结果必须是确保用户能够直观,安全且轻松地使用我们的产品。 当我们始终专注于团队提供的产品质量时,我们将获得成为有效的质量检查工程师的声誉,并获得开发人员,产品所有者和领导者的尊重和信任。

翻译自: https://www.javacodegeeks.com/2018/08/7-bad-habits-avoid-qa-engineer.html

质量检查工程师应避免的7个不良习惯相关推荐

  1. 前端工程师·的好习惯_质量检查工程师应避免的7个不良习惯

    前端工程师·的好习惯 大多数人都同意软件质量很重要. 我们已经看到了各种情况下的错误软件的结果:从火星探测器故障和执行致命剂量辐射的化学治疗仪到经历级联故障的电信系统. 假设软件测试人员将是开发团队的 ...

  2. 程序人生:硬件工程师应记住的10个技巧

    嵌入式系统设计不仅需要了解硬件,还需了解软件是如何影响硬件并与硬件进行交互的.设计硬件所需的范式可能与设计软件完全相反.当从硬件设计转向包含软件的设计时,硬件工程师应牢记以下十个技巧. 技巧#1:流程 ...

  3. 一个优秀的前端工程师应具备哪些技能?

    作为一名前端工程师,产品的内外兼优才能体现它的完美,前端工程师需要学习的技能远远超过设计师. 那么一名优秀的WEB前端工程师应具备哪些技能呢,我在这里分享一下,供大家参考: 第一:HTML超文本标记语 ...

  4. 嵌入式硬件工程师应具备哪些基本技能?

    设计是产品制作的第一关,那些硬件工程师既是产品设计者,又是质量把关者,对产品的质量与性能起着决定作用.那么,嵌入式硬件工程师应具备哪些基本技能? 一.硬件工程师应具备的基本技能 1.有需求分析.总体方 ...

  5. 系统工程师应具备的技能

    系统工程师应具备的技能 系统工程师应具备的技能 总结 在网上搜了一哈,系统工程师招聘的要求,如下图: 本人在这里学习linux源码分析,提供了如下两个链接: 体验课(Linux内核源码/内存调优/文件 ...

  6. 声学工程师应知道的150个声学基础知识

    和大家分享一下声学工程师应知道的150个声学基础知识. 注意,声学工程师和音频工程师可不是同一岗位,前者会更侧重于硬件,后者侧重于软件层面.但是关于声音的一些基础内容还是相同的,可以多多了解!!! 以 ...

  7. 声学工程师应知道的150个声学基础知识(全篇)

    和大家分享一下声学工程师应知道的150个声学基础知识. 注意,声学工程师和音频工程师可不是同一岗位,前者会更侧重于硬件,后者侧重于软件层面.但是关于声音的一些基础内容还是相同的,可以多多了解!!! 以 ...

  8. 软件工程师应具备的素质

    因特网的迅速崛起,使计算机的应用越来越广泛,人们对计算机软件的需求也急剧膨胀.传统的"作坊式"软件开发时代,我们更多的培养了一批称得上"个人英雄"的" ...

  9. Linux初级工程师应知应会

    Linux初级工程师应知应会 权限管理 1. Linux用户及权限 1. Linux用户和组 Linux中的用户 root用户 系统用户 用户组 2. Linux权限构成 Linux的权限组成 Lin ...

最新文章

  1. Nature Method:Bioconda解决生物软件安装的烦恼
  2. 深度学习应用实战案例-员工流失预测模型(Python源代码)
  3. 成功解决PermissionError: [Errno 13] Permission denied: ‘F:\\File\\data\\123.csv‘
  4. java调用 solr集群_Solr集群安装Version5.5.2(cloud模式)
  5. 微信获取位置 转化为 高德地图 位置 地址
  6. linux date输出到文件,Linux常用命令--ls、cd、date用法
  7. python获取列表序号_确定列表中的序列号(Python)
  8. PYTHON INSTALL
  9. vs 和 rider 一决高下 结合开发dotnet应用
  10. pygame安装教程
  11. psd 直接导入unity
  12. AndrOid系统亭子运行,细讲Android系统下的Preference
  13. python sklearn metrics,在Python中sklearn.metrics.mean_squared_error越大越好(否定)?
  14. NSG是什么?适用于哪些产品?
  15. 动词ing基本用法_动词 ing的用法
  16. OCJP 考试题之七
  17. FSM-Golang
  18. Markus Persson:Minecraft 游戏背后的奇才
  19. CSR8675的学习笔记:驱动正交编码器
  20. ppt密码忘了怎么打开

热门文章

  1. JUnit编写测试用例
  2. python scatter参数详解_Python 中 scatter 函数参数及用法详解
  3. pyplot.scatter函数绘制散点图
  4. 粉碎城堡链游Castle Crush,必看全新评测与攻略
  5. 中国婴幼儿用品连锁市场运营模式与投资潜力分析报告2022年版
  6. windows下styleGAN2和styleGAN3编译配置bug
  7. iconfont阿里图标使用方法(Font Class用法)
  8. TP5 自定义跳转页面
  9. CSS超出部分显示省略号
  10. html标签display: flex;弹性盒子换行