第四章:持续完善中的TestOps
内容:
1)持续改进/改善介绍
持续改进是一个永无止境的过程,侧重于提高组织的有效性和/或效率,以实现其政策和目标。 精益运动在制造业和商业中得到普及。 通常持续改进工作包括找出简化工作和减少浪费的机会。
改善是1986年Kaizen首先定义的“持续改进”的实践:日本竞争成功的关键。 你可以把它看作一个强调不断改进的哲学。 我想在这篇文章中展示如何在你的TestOps活动中采用这种方法。
2)初学者的心态
为了采取持续改进理念,您需要一定的特征 - 谦虚的健康水平。 除非你意识到,不是你所做的一切都是完美的,积极的改变是不可能的
前一段时间,我发现了一个关于禅宗的方法的随机文章。 禅宗禅师在禅宗心中说:“初学者的心灵:对禅修和禅修的非正式会谈:”在初学者的心中,有许多可能性。 在专家的脑海里,几乎没有。
在学习方面,我建议再次尝试成为一个孩子。 想象一下,3岁的孩子几乎无法满足好奇心。 一切都是新的。 一切都很有趣。 一切都值得一试。 没有什么应该被遗忘的。 失败的风险是不存在的。
备注:我在谦虚的基础上增加了“健康”一词,因为在某些情况下,你必须大胆地提出要求。 职位薪酬谈判是一个很好的例子 设定你的奖高,目标是赚取高于平均水平。
3)TestOps的持续改进
我决定把重点放在我的TestOps系列的持续改进上,因为我认为它是成功的必要组成部分。 IT行业是非常苛刻的,如果没有它,你可能会失败。
以下是我可以不断改进的最重要的事情清单:
3a)建造金字塔
成千上万的工人不得不为了建造埃及金字塔而工作。今天创造性的有效测试金字塔要容易得多,你应该充分利用这一点。令人惊讶的是,有很多关于正确测试设计的文章,但很少分析测试策略变得无效的可能性(不是罕见的事情,因为测试有时比实际开发更困难)。
IT中的应用程序,框架,需求和几乎所有内容随着时间的推移而变化当然,情况可能会变得更糟糕,但我相信自去年以来有一件事情有所改善 - 你的知识。仔细看看你的测试场景,并问自己一个简单的问题:有什么可以改进的?例如,假设您的应用程序现在有新的API可用。你还在通过GUI进行测试,还是将你的场景转换到了服务级别?
可能我们都喜欢硒测试,因为它们很有趣,但是一些功能可以真正被单元测试覆盖。这是大量的时间和保存的主要工作。
3b)极品飞车
拿破仑·波拿巴曾经说过:“我们可以恢复的空间; 时间永远不会“。 没有给出快速反馈的测试往往是非常令人沮丧的,因为它们需要上下文切换。 发现真正的应用程序错误并不是什么大不了的事情,但一旦变成碎片,开发人员往往立即失去对测试套件可靠性的信心。
总体执行时间应仔细衡量,不要忽略。 测试执行中的并行性是今天的必须,而且实现起来也不是很难。 所有顶级框架都支持它,对于Selenium我们有Grid。
有时需要在这个领域进行操作性的工作,因此,好的TestOps应该放在这里。
3c)重构
每一行代码都需要维护。 测试人员/开发人员的维护工作并不是免费的,所以我们可以放心地认为,每一行代码都会让公司花钱。
程序员经常要求PO重构时间,这不仅使工作更容易,而且还节省了一些钱。 我们应该像生产代码一样对待测试代码。 这不仅意味着它应该在同一个存储库中,而且每天都有必要使它变得更好。
使用IntelliJ IDE重构非常简单。 你完全使用它的功能吗? 你是否改善了与当前任务接近的代码?
3d)自动化一切
TestOps是关于自动化的。 这不仅意味着测试,而且意味着基础设施。 实际上,站点可靠性工程师会争辩说,能够在几秒钟内从头开始重新创建测试环境(例如使用Ansible)是不够的。 它也应该是自我修复的。
持续测试是快速和高质量软件发布的先决条件。
3e)拥抱云计算和开源软件
这一点与c)和d)紧密相连。 Spring Boot的有效使用使您可以在极短的时间内创建工作应用程序。 各种各样的人和公司提供减少我们的维护努力的工作软件。 这不仅节省了我们的时间,还节省了金钱。 为什么不利用它们?
物理服务器需要空间,维护,管理和持续冷却。 也许云中的小型服务器会更便宜?
3f)阅读
几年前,我开始读了很多书。 现在,这是我的习惯,如果我没有机会这样做,我觉得很奇怪。 从那时起,我的生活几乎每一个方面都改善了,包括个人关系。 我甚至敢说:你真的应该扩大你的测试知识,看看它是如何在不同的公司发挥自己的作用。
4)结论
采用持续改进的思维方式在你生活的每一个方面都是非常有益的。我很确定你认识的最优秀的人都练习很多。为什么不在测试中使用它呢?
5)进一步阅读
博客:
安科网-一十一
你需要更多阅读丰满你的知识体系:
第八章:TestOps新名词的定义
第七章:TestOps持续测试
第六章:TestOps的先决条件与TiP的类型
第五章:TestOps让自己不可或缺
第四章:持续完善中的TestOps
第三章:TestOps方法论
第二章:有种测试模式叫做TestOps
第一章:DevOps将为TestOps让路