纠正两个常见的错误观念。端到端测试自动化是 简单而容易 还是 复杂而不可能
当前市场上各种端到端的测试工具层出不穷,工具市场很繁荣,但真正成功的项目实践却很少见。今天看到了一篇很有意思的文章,我愿称作者为典型的 selenium 原教旨主义者, 他的一些观点尽管看上去非常的 old school,不过总的来说是很有道理的,这里简单的分享一下他的观点。
他的这篇文章叫做 Correct two Common Misconceptions: End-to-End Test Automation is “Simple and Easy” or “Complex and Impossible”,翻译过来就是纠正两个常见的错误观念。端到端测试自动化是 “简单而容易 “还是 “复杂而不可能”, 原文的地址是https://zhiminzhan.medium.com/correct-two-common-misconceptions-end-to-end-test-automation-is-simple-and-easy-or-complex-and-ad559ade982a。
一切都开始于这样的一个观点:
事实:大多数测试自动化的尝试都失败了
“根据我在这个领域 17 年的经验,我同意图片中描述的主要概念,即大多数测试自动化的努力往往是失败的。” - 作者
端到端测试自动化是简单还是复杂?
答案取决于你问谁。在过去的 30 年里,测试自动化供应商,如惠普,一直在推销 “记录/回放 “和 “对象识别工具 “的概念。尽管这些方法已经被证明是无效的,但一些供应商仍然坚持使用这些方法。
在一个典型的软件团队中,众多的软件工程师和经理可能认为 “测试自动化 “是一个简单的任务,尽管没有人见过测试自动化的成功实施(也就是说,团队完全依靠手工测试)。作为证据,许多招聘广告要求申请人有 “创建测试自动化框架 “的经验,这似乎很荒谬。
所以,端到端的测试自动化可能并不像许多人想象的那样简单和容易。
“根据我的经验,优秀的开发人员不一定能成为优秀的测试人员,但优秀的测试人员(同时具有很强的设计能力)可以成为优秀的开发人员。这是一种心态和一种激情。…他们是黄金”。
- 谷歌副总裁帕特里克-科普兰,在一次采访中(2010 年)
“95%的时间,95%的测试工程师会写出糟糕的 GUI 自动化,只是因为它是一件非常难做的事情。
- 这篇来自微软测试大师 Alan Page 的采访(2015 年)
“测试比开发更难。如果你想有好的测试,你需要把你最好的人放在测试中”。
- Gerald Weinberg,在一个播客中(2018 年)。
考虑到事实和上述知名专家的引言,似乎完成端到端的测试自动化是一个无法克服的挑战。
我的答案是 “它可以很简单,但往往是人为的错误使它变得不必要的困难。”
许多人做出了明显的错误的决定
我见过错误的决定,往往不止一个,在失败的测试自动化尝试中。