• 0
  • 1
分享
  • 每个软件从业者应该停止放弃的5个借口
  • 恬恬圈 2019-12-13 13:35:46 字数 3183 阅读 2026 收藏 1

一段时间内,我从上千个面试者中聘用大约100名测试员,从这段面试经历中我揭开了一种模式。在采访中,我和同行的测试人员进行了多次讨论,我非常高兴地看到了我们的测试员群体中的高素质人才。

但让我也分享故事的另一面,我所谈论的模式也让我很伤心。看着潜在的表演者被关进一个虚拟的责任笼里,我永远不会感到高兴。看到摇滚明星在受控制的舞台上表演,我感到不满。

如果你还不知道什么是问题,什么是基线,这是我们测试界相当大的一部分问题,在他们作为测试人员开始他们的职业生涯多年之后,在多个方面都没有足够的增长。忘记360度,甚至不到一半。

对不起,这是残酷的,但它是真实的。

这是谁的责任?也许在某种程度上是整个行业的意识。也有可能事公司政策和高级管理人员。但最重要的是测试人员自己。

再看一遍,是你。是我们。因为我们成了借口的牺牲品。

下面是我发现的几种模式/借口:

注:我并不是说每一个测试人员和每一个组织都有这种情况。但我已经看到足够多的例子来说明我们大多数人都是受害者。

一.我们不能控制我们的测试环境,我们只有只读的访问权限

我经常听到这样的说法/借口--"我们只有只读的访问权限。"甚至最糟糕的情况是"我们只能访问日志,其他的什么都不行"。其他一切都是由开发团队或其他团队完成的。

这项工作将给我们提供许多关于测试和许多其他技术方面的美丽而富有成果的见解,而这些工作并不是由我们来完成的。也许我们很高兴,但我们不应该这样。告诉我你没有控制你的测试环境并最大程度地从中受益的原因是什么?

如果你对上面我说的感到好奇,可能会从中获得益处

1.您可以完全控制测试环境,以确保它是精确的或接近生产环境的副本。这将有助于你避免意想不到的惊喜,至少当你的项目交付物命中产品时。

2.您知道所有涉及的组件,以及用于产品功能的所有软件版本。随着时间的推移,相信我,你会对他们的工作,局限性和可能的失败点有很多的见解。

3.您有足够的访问权限进行至少一级调试,以防出现底层问题。例如:运行缓慢、检查CPU、内存利用率和每一级流量的日志都不是火箭科学。

4.您拥有对安装的控制权,因此您知道您正在更改什么,以及正在部署什么样的构建。在发布发布之前,您比以前更加自信了。

5.你学习它,你就学会了一切。虽然它是基于Linux或基于Windows的。

有道理吗?如果你至少同意有好处的话继续往下看

现在的问题是你能在你的团队/组织中做出什么样的改变来完成这项工作。你会怎么做呢?。

嗯,我不知道。我不知道你们的团队,你们的领导/经理,你们的组织,所以我不能帮你们解决这个问题。我当然可以分享一些可能有用的东西。你试着和你的开发人员或者任何一个拥有这个技能的团队紧密合作,看看他们做什么和怎么做。

他们的方式登录到环境(服务器),他们的方式注销和之间的一切。一旦你获得了一些知识,你就有信心说几句话,在类似的情况再次发生或类似的活动再次发生时给出一些建议。

很显然,你的开发人员/领导/经理迟早会看到你的自信。这是你可以要求控制的时候了。告诉我为什么他们不给你一个有力的理由?如果您已经显示了所需的功能,他们应该非常乐意这样做。

相信我,他们还有很多工作要做,所以他们不难把控制权释放给你。至少我希望如此。

二.我们没有已经部署的环境,其他团队会做这件事情

你星期一早上来办公室。您注意到生成拦截器有几个问题。您需要从构建存储库构建新版本。您提出请求或联系您的开发团队或部署团队。哦,他们都在忙些其他的事情。但他们在一段时间后就可以做到了。

现在告诉我,为什么会这样?它并不像看上去那么复杂。当采取新的构建时,开发人员肯定肯定可以修复好。但是,当您只需触发并部署它时,为什么要等待或依赖某个人呢?

有能力和权限随时部署,使您的工作更容易,没有任何等待。你看到了吗?它也会增加你每天测试的周转时间。尽管它正在使用添加的记录器调试某些缺陷,或者使用新的构建来验证已解决的错误。或者是进行新的构建并开始测试新特性。

让我告诉你一些我的亲身经历。这不仅仅是关于时间的问题。部署教给你很多你无法想象的东西。原因是,它经常失败。应用程序有时停止使用新代码。很多时候部署本身失败。每次失败时,它都会促使你调试它。它促使你在谷歌上搜索或者问某人一个问题或者最好问自己一个问题。

它让你思考。

当然,这不是一个真正的软件测试,但它肯定是测试你的能力。

我要说,除了纯软件测试之外,我学习的很大一部分来自于环境的部署和维护。

我不记得我为某事做了多少次尝试和错误尝试,计数必须是几百。

我不记得有多少次我去检查一些软件的发布手册。

我不记得我打了多少次谷歌搜索按钮,或者导航到那个堆栈溢出链接。

我所知道的是它给了我很多,教会了我很多。

补救办法与我们所说的第一个借口很相似。

学习它,展示它并向它索取。可能会起作用

我不会很努力地做这件事,因为在面试中,你每次都没有机会讨论候选人自己的经验和调查/调试所造成的特殊缺陷。

三.我们不需要调试问题,只需要找到步骤并进行日志记录就可以

然而,我可以肯定地说,不是所有的人在向开发者传递缺陷之前都要挑战自己的感官。

很多时候日志都说明了这一切。很多时候,一个问题的模式说明了一切。很多时候它失败了,因为一些必要的服务失败了。

简言之,很多时候我们确实有可能找到确切的根本原因,或者至少能接近它。

因此,请问自己几个问题,不是为了帮助开发人员,而是为了使测试周期快速,为了自己的成长。

你是这里的补救办法。没有其他人。

四.我不知道它为什么会发生,开发人员解决它,我只是验证它

哦,来吧。对不起,听到这个让我很烦。

每一次,当我问测试员一个问题时,我都会很恼火--为什么要面对特定的缺陷,什么是RCA(根本原因分析),而他/她会回答"我不知道"。

我们真的用黑盒这个词吗?我们怎么能不向开发者询问他到底修复了什么呢?为什么我们不能问权威是不是一个问题?

我敢肯定,99%次我们不知道根本原因分析(RCA)或修复,因为我们不要求它。

相信我,知道确切的修复,修复的模块,无论是在前端还是后端,无论是注入任何功能开发还是其他缺陷的修复,都会对你的测试有所帮助。

除此之外,这些信息有助于你了解许多技术性的东西,否则你将永远不会遇到。

补救?问它,需求它,如何工作

五.除了手工测试之外,我没有其他机会做其他工作

考虑到你可能的工作量或责任限制,也许这个借口在一定程度上是有效的,但并不完全有效。

这里的问题是,我们说我们没有机会执行非功能性的测试,或者我们不应该这样做,或者我们没有时间。

同意,学习总是需要时间。但是你没有什么可以改变的吗?

在测试该新特性或测试该API时,

你不可能一直盯着响应时间吗?

难道您不可能向您的业务分析师询问该特性/模块/ API在生产中需要处理的负载,以便您能够测试它吗?

有没有可能至少执行基本的安全检查像过期,URL篡改或XSS攻击,网站形式你应该测试处理?

是不是至少可以说,这个特定的"提交"或"帮助"按钮似乎不太合适或不容易察觉,并发挥你的小作用,使产品更容易使用?

你难道不能从一件事开始,然后不断地学习吗?

答案是肯定的,小的或大的取决于周围的各种因素,但肯定不是。如果你的职责不要求它(因为还有其他团队),没有人会阻止你为自己的学习投入额外的时间。我认为在课外或业余时间自学是可能的。所以找到那些可能的额外因素,现在然后开始做。

六.结论

我希望我在你心中引发了一些思考过程和学习的野心。

请原谅,如果你发现我的话刺耳,但相信我,我只想让大家100%清楚、意识到自己问题的严重性。

希望它对你们大家都有积极的作用。


版权声明:本文出自《51测试天地》原创测试文章系列(四十七)投稿。51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。

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

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •       1:CC攻击是正常的业务逻辑,大并发让你处理不过来,处理XP SP2,以上的系统都封了RAW格式协议封包自定义,除了基于应用层改协议,之外都是模拟或请求来测试传输层      2:UDP不会粘包,不会少包,除非缓存区满      3:TCP主要特征有:3次握手连接4次挥手断开拥塞控制重传控制流传输方式,服务端需要额外解析方面有:协议粘包,协议少包,协议丢包、异常协议响应、正常协议响应      UDP主要特征有:包传输方式无粘包错包且...
            0 1 1518
            分享
          • 一.兼容性测试直播的兼容性测试则是在不同的机型、不同的系统、不同的分辨率以及不同网络环境下测试是否可以正常开播,进入直播间观看直播、发送消息并且在直播结束时可以正常跳转到直播结束页面进行相关操作。图1.1 兼容性测试二.性能测试针对直播间的性能测试主要涉及到以下几个方面:图2.1 性能测试CPU:iOS可以使用instruments中的Activity Monitor帮助测试。Android可以利用Android Studio 自带 CPU检测功能进行测试 。内存:iOS可以使用instruments的 Leaks、Activity Monitor 、Allocations 、Zombies帮...
            14 14 1568
            分享
          •   在选择接口测试自动化框架时,需要根据团队的技术栈和项目需求来综合考虑。对于测试团队来说,使用Python相关的测试框架更为便捷。无论选择哪种框架,重要的是确保 框架功能完备,易于维护和扩展,提高测试效率和准确性。今天勇哥介绍一个基于Python的接口自动化测试框架,结合了Python的Unittest框架、Requests库以及数据驱动思想,帮助您更好地实现接口测试。  1. 接口自动化测试项目框架简介  搭建接口自动化测试框架的技术栈如下:  语言:Python,简洁高效,上手容易,无压力;人生苦短,我用 python;  测试框架:Unittest,封装自定义断言方法进行验证,如:eq...
            0 0 761
            分享
          • 前言:性能压测中我们需要明白以下几点1、好的开始是成功的一半,前期的准备非常重要2、过程中,关注每个细节,多个维度监控3、在调优中多积累经验4、对结果负责,测试报告要清晰易懂,追求数据的准确性一、如何分析性能数据(测试结果)答:主要从吞吐量,错误率,资源监控数据,比如一个接口的处理能力为100个/s,高于需求的期望值。错误率为0.001%,期望值为0.01%,最高cpu占用率不超70%。以上指标都符合期待值,那么通过提取这些关键数据就可以记录下来,作为测试的准出标准二、如何快速定位到性能阈值eg:每秒处理事务数达到最理想的值,有没有什么技巧?答:对于一个新的压测单元,建议先设置一个线程数较小的...
            0 0 1981
            分享
          •   一直以来,在整个IT行业中,一说起软件测试这个工作,人们脑子中浮现的都是一群软件测试工程师用双手在键盘上或在手机上“点点点”的场景,所以很长一段时间,软件测试工程师都被戏称为“点点点”工程师。不过,现在0202年都过了这么久了,如果还抱着这种态度来看待“软件测试”这个职业,未免有点太过时了。这就跟前几年台湾人民觉得祖国大陆人民吃不起茶叶蛋一样,“Out的妈妈给Out开门,Out到家了”。  况且,现在的软件测试跟传统的软件测试相比已经发生了非常大的变化,不管是测试范围还是测试手段,都有很大的不同。所以,现在我们更专业的叫法是“测试开发工程师”,从这个名字就可以看出来,传统的点点点已经没有市...
            0 0 1016
            分享
      • 51testing软件测试圈微信