我们目前正在开发一个新的网站,我被要求对自动化进行调查并提出建议。现在,我非常倾向于使用Selenium+Web Driver进行测试。但是,我想找出我们需要的资源。
我认为,我们需要引进一位经验丰富的自动化开发人员来实现我们的基础设施,然后我们需要至少一个专注于维护和改进自动化测试的人。我担心我不会得到一个专门的资源,他们最终会因为一些紧急情况而需要进行手工QA测试,最终会成为一个手动测试人员,自动化也会一事无成。
您是否见过QA开发人员在自动化和手动测试之间有很好的分工?是否有什么特殊的事情来帮助确保自动化测试保持正常?
发布于 2016-02-04 15:10:20
Selenium/WebDriver会做得很好。WebDriver是浏览器自动化的W3C标准。
测试自动化是在一个频谱上,从几乎完全手动到100%自动化。
测试自动化是在一些自动化的辅助下进行的手动测试。最好是接近100%,但你会从不到100%开始:-)
自动化测试是完整的测试套件,自动运行--连续集成风格。到那里不容易,但你不必去。从测试中最重复的任务的自动化开始。
手工测试和自动化测试之间的区别并不是很好,但原因是擅长手工测试的人格类型并不能(在我个人的经验中)成为优秀的开发人员,反之亦然。好的开发人员总是看什么过程是重复的,可以重构和自动化。好的手工测试人员看什么是不同的和可疑的。
此外,自动测试对流程来说是错误的名称。应该是“自动检查”。因为自动化测试只能(而且确实)检查测试工程师所期望的条件,但如果测试工程师没有对异常条件进行检查,则会公然忽略任何异常情况。相比之下,任何优秀的手工测试人员都会挑选不寻常的东西。
因此,从(一些)测试自动化开始,从那里开始发展。但即使在此之前,您还需要强大的单元测试自动化套件(由开发人员编写和维护)。没有覆盖大部分代码的广泛单元测试的系统级测试(e2e)没有什么意义。单元测试编写成本更低,更接近错误。
发布于 2016-02-04 16:08:26
我还想补充彼得上面说的话。自动化UI交互(在本例中使用Selenium )会占用相当长的维护测试时间。如果您的团队真的想投资于自动化,那么首先您需要一个协议,即开发将侧重于使他们的产品可测试,并以一种易于自动化的方式公开元素。这是什么意思?例如,使用HTML中的唯一标识符,这些标识符永远不会更改,而且是可读的。如果每次发布新版本的站点进行测试并更改is时,无论您编写的测试有多好,都需要花费时间来更新它们,然后才能再次提供价值。
在编写驱动浏览器的自动化测试之前,开发人员需要知道他们需要做什么,以便于编写新的测试并维护已经存在的测试。
https://sqa.stackexchange.com/questions/16830
复制相似问题