首先,在人们中间,所有质量保证工程师(“以我们自己的方式”,质量部门的工程师)被称为测试员。 这并非完全正确,实际上测试只是质量检查任务的一部分,但谁来照顾。 因此,让我们顺应大势所趋,我们将使用通常的驱动器。
那么什么决定了一个好的测试人员呢? 我们不会屈从于陈词滥调,说:专心,恒心,耐心,好奇心,才华,无所作为和其他废话。 这当然很重要,但并不重要。 首先,一个人应该具有常识和责任感。
他们说,例如,最主要的是拥有打破一切的才能。 通常您会听到,他们说他不会接听,会破坏一切。 这当然是值得称赞的,但是测试人员的工作并不是破坏某些事情的主要内容。 在这里,定义将对我们有所帮助,这在Wikipedia上并不难找到。
软件测试是研究,测试软件产品的过程,目的是在以某种方式选择的有限测试集上检查程序的实际行为与其预期行为之间的对应关系。
它表明该软件有特定要求,并且有必要满足这些要求。 如果测试人员破坏了程序,而不是检查它是否完全执行了分配给它的功能,那么最终它可以使客户获得稳定的垃圾,但不是必须的。
我了解每个人都喜欢故事,有人怎么搞砸了,我有故事。 对于我的工作,我在不同的地方和不同的项目中工作,所以我是自己的见证人,或者听到过很多同事的故事。 他们中的一些人愿意讲。 好吧,是的,这是必不可少的口头禅:所有巧合都是随机的,而且是发明名称的。
测试及更多
让我们按顺序开始。 正如我在一开始所说的那样,测试人员不仅在测试。 你觉得这样的双关语怎么样? 在声誉卓著的大型公司中,他们尝试尽早将测试团队与项目联系起来,即 在收集需求的阶段,但这并不是在所有地方而且并非总是如此。
一旦在验收测试期间,用户就启动了一个严重的错误,因为 其中一项要求未得到满足。 声明的本质是,屏幕上的用户未找到他需要的属性(对于储罐中的属性-具有值的字段)。 测试人员当然会进入规范,检查该属性是否存在于应用程序中,然后高兴地跑去告诉用户一切都很好。
您已经了解到历史还不止于此。
测试人员在遇到消极和愤慨的情况下试图向用户解释他的错。 用户坐下来,发现了编写规范所依据的要求。 这些要求中的一个几乎从字面上看如下:“必须在每个屏幕上显示该属性。” 一句话,但意义何在! 然后,他打开了该应用程序,并开始随机导航至不同的屏幕,并说:“此属性在哪里?” 显然,用户公开嘲笑,但正式地他有权这样做。 麻烦在于,问题不断升级,越来越多的人参与到该问题的讨论中。 在用户的最后,除了测试员本人之外,还有几位PM和分析人员说服了他,他坚决要求不可能。
结果,找到了一个折衷方案,并在请求中显示了应在其中放置属性的必要屏幕的列表,但这需要对程序代码进行较大的更改,因此,必须重新运行整个开发周期,但必须加快速度。 公司为员工的压力和处理花费了额外的钱,更不用说声誉成本了。 如果在项目开始时就连接了测试人员,并且可以看到歧义性要求(至少在以后要检查规范是否符合要求),则可以避免所有这些情况。 是的,测试人员经常直接与真实用户合作,这要求他们应对压力减轻,心理分析和超感官知觉。
没有狂热
具有讽刺意味的是,我们走得更远,测试过程本身具有胡须的特征:
一旦测试人员进入测试条。
碰到酒吧。
爬进酒吧。
跳舞,穿透酒吧。
潜入酒吧。
闯入酒吧。
跳到酒吧。
订单:
一杯啤酒
2杯啤酒
0杯啤酒
999999999杯啤酒,
一杯蜥蜴
-1杯啤酒
qwerty啤酒杯。
第一位真正的顾客走进酒吧,问厕所在哪里。 酒吧突然起火,所有人都死了。
并非所有人都知道您可以无休止地进行测试。 理想是无法实现的,并且项目有非常具体的截止日期。 因此,有一个测试员在通过测试用例时不断使他失败。 时间流逝,该项目已经开始结束,开发人员克服了所有发现的问题。 测试人员在这里声明基本的必要功能不起作用。 大家都知道:按时修复它是行不通的。
在诉讼过程中,事实证明:在测试过程中,直到不幸的时刻,脚本才完全完成。 测试人员在过程的开始发现一个缺陷,该缺陷进行了测试,开了票并中了一半。 同时,可以继续进行测试,因为 找到的所有错误均未阻止它。 随后,整个团队都具有传统的压力和处理能力。
顺便说一句,一些用户在验收测试中提交此错误,声明该错误为关键并退出工作。 这极大地使工作复杂化,因为 在一般可能不是问题的一般问题流中,确实丢失了严重的错误。
道德是这样的:优秀的测试人员将永远不会停止发现遇到的第一个错误。 它会从头到尾遍历整个脚本,同时记录发现的所有错误,如果遇到错误阻止段落通过,它将寻找解决方法,即 解决方法。 当他确信没有解决方法时,他会停下来。
有一个警告。 大多数情况下,项目是在紧迫的期限内完成的,或者不是很紧迫,而是非常具体。 碰巧的是,一个人被喷洒在一个领域的无休止的测试中,从而将所有可能和不可能的值变化引入其中。 同时,根据客户要求,即使使用该字段中的值,也有必要检查应用程序执行的功能。 结果,他冒着浪费时间而不检查主要内容的风险。 测试人员应能够正确评估其优势和应用程序的关键位置。 无需测试不需要测试的地方。 最主要的是,应用程序必须完成分配给它的功能。 首先,您需要实现直接方案的执行,然后将执行质量提高到所需的水平。
我的舌头是我的敌人
进一步...文档方面的问题不仅可能对分析人员而且对测试人员也如此。 反复指出,不仅开发人员无法在票证的相应字段中清楚地描述票证的内容,而且测试人员本身也无法正确地写出导致错误的操作顺序。 这是一个大问题。 有人根本不理解为什么会发生错误,并且不会理会这些步骤。 有人根本没有识字能力。
这一切意味着什么? 答案和刺猬在这里是可以理解的,但是有了例子,当然会更有趣。
有一群测试人员,看到自己面前的错误,只记录了百万步,包括导致该错误的垃圾。 他们不会重现该错误,也不会弄清楚到底是什么导致了该错误。 同时,他们可以写下一组与此错误完全无关的步骤。 开发人员将尝试进行复制,在某个时候他的头会沸腾,然后他将亲自与测试人员打交道。 他们将一起理解,并且双方将花费大量时间进行不必要的交流。 幸运的是,尽管有临床病例,所有这些都可以通过时间和经验迅速得到解决。
识字越来越难。 在我的实践中,有一种情况是质量检查负责人需要更正几十张票证的描述,因为 它们应该已经在进度报告中发送给客户。 发生这种情况是因为大多数团队无法正确用英语表达他们的想法。
但是,俄罗斯也有问题,感谢上帝,这种情况很少发生。 这里的一切都是一样的,描述不当会导致这样的事实,即门票就像足球一样,在人与人之间飞驰而没有进入目标。 如果团队都在同一个房间里并且可以在不离开显示器的情况下进行交谈,那是很好的。 更加困难-如果团队分散。 如果使用多种语言,则非常糟糕。 最终可能发生的最糟糕的事情是,由于误解,该票证将被错误地处理,并将被重新打开一千次。 甚至对于客户而言,具有反向逻辑的版本也会飞走。
个人空间
另一个问题是测试台和测试数据。 在不同的公司中,这种情况发生的方式不同,但是通常会发生这样的情况:授予员工访问客户工作服务器的权限,或者为员工提供数据库以进行测试。 看来可能出什么问题了?
但是,如果您可以访问某人的服务器,那么一方面,这很方便,您可以从头到尾查看问题,而不会因为照片而犯错。 但是存在破坏客户数据的风险,这可能会导致严重的后果。 对于法律通常禁止此类访问的情况,我已经保持沉默。
曾经有一个客户从服务器掉下3天的情况。 一直以来,开发人员都不知道为什么会发生这种情况,并疯狂地寻找错误,使业务蒙受了损失。 结果,事实证明:该公司雇用印度人进行外包,在那里,人们不费吹灰之力就赋予了所有管理权。 对每个人来说-这意味着即使是在公司工作了3天的女孩,在她的村庄中也没有计算机,因此约会时间更短。 但是这个女孩非常有才华,她设法在管理面板中找到了基本要点,并改变了她的类型,之后一切都自然地掉下来并停止工作。 很容易猜到她在那之后是如何摆脱职业阶梯的。
同样的废话和来自客户的数据。 同样,我不是在谈论法律禁止的情况。 如果可以处理真实数据,那很好,但是对此一定要小心。 每个人都可能听说过有关从测试服务器向真实用户随机发送信件或消息的故事。 因此,这些不是笑话。 这确实发生,而且经常发生。 好的,如果这些消息被称为测试消息并且具有合理的内容,但是碰巧人们冒充编写了整个应用程序开发团队都感到遗憾的东西。
组织时刻
我已经开始对大量文本感到无聊,所以最后。 测试人员必须不断向其老板提供有关其工作的最新信息。 根据这些报告,如果正确完成,则负责人就整个项目的状态作出结论。 不仅与一个测试人员或整个测试团队的工作有关,而且与开发团队的工作以及项目所在的阶段有关。 此外,此类报告还允许计划分析以用于将来的发行版等。
有很多例子表明这项工作没有完成或做得不当,导致当局对随之而来的后果感到不确定。 我会告诉你最聪明的。
一旦测试人员进入了一个新项目。 由于他不太了解他,因此他承担了整理和记录观察结果的任务。 由于这是非正式的,因此我们同意将使用Googledock进行编写。 该名男子开始执行任务,一周后检查了这项任务,测试人员被拍打在肩膀上,他继续工作。 几个月过去了,当局开始担心为什么bugtracker中没有票,而该项目却什么也没做。 我们开始弄清楚,结果发现一个人继续在那个Googledock中写作。 没有人说“ Potty,不要做饭”,也没有阻止测试人员,他定期继续理解和记录观察结果,同时不让自己知道。 有错误,他找到了,但没有告诉任何人,只是将它们记录在一个文件中,一个星期后所有人都忘记了。
实际上,期望一个人将继续已经正式的工作,即 在错误跟踪器中,向开发人员提供票证,但是这没有发生。 那个男人虽然工作了,但似乎什么也没做。 显然,问题不仅在于测试人员,而且如果他定期报告其活动,则可以避免误解。
通常,缺少信息会造成产品测试不佳的感觉,即该功能的这一部分或那一部分尚未经过测试。 为防止这种情况发生,您需要制作详细的报告,这对于大型项目尤其重要。
结论
您需要了解,质量检查实际上是用户的律师。 在与应用程序相关的任何不可理解的情况下,测试人员都应该将自己放在自己的位置。 如果通过这种对意识的简单操纵,发现应用程序对某些事情不满意,那么您需要启动票证。 从开发人员的角度来看,这可能是按钮放置在错误的地方,或者是另一个琐事,但是对于用户而言,这种琐事经常会变成地狱和烦人的一面。 例如,您可以在应用程序中使用大量弹出窗口。 是的,该程序执行其功能,但是很难使用它,因为 该功能的执行需要用户花费大量时间和精力,而这些用户不得不按一堆额外的窗口进行下载和更多操作,而不是在一个屏幕上完成所有工作。
如果一个人以负责任的态度和常识接近工作,那么他将能够避免他的道路上的大多数问题,而不仅仅是QA专业。