首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >测试用模拟对象.测试自动化工程师透视图

测试用模拟对象.测试自动化工程师透视图
EN

Software Engineering用户
提问于 2011-02-13 04:17:50
回答 4查看 2.5K关注 0票数 5

QA工程师负责开发用于单元测试的模拟对象的频率。那么处理模拟对象只是开发人员的工作吗?我之所以问这个问题,是因为我对QA这个职业很感兴趣,并且我正在学习一些工具,比如JUnit、TestNG和一些框架。我只想知道在开发人员完成什么级别的单元测试之前,QA工程师从哪一点接管测试以获得更好的测试覆盖率?

谢谢

编辑:基于下面的答案,我提供了关于QA的更多细节。我对更多的测试自动化感兴趣,而不是简单的QA涉及到脚本的记录和播放。那么,测试自动化工程师负责开发框架吗?或者他们有一支致力于框架开发的开发团队?是的,我是从测试自动化工程师的角度询问如何使用模拟对象进行测试。

EN

回答 4

Software Engineering用户

回答已采纳

发布于 2011-02-13 12:27:05

嘿。

第一个问题:您想使用xUnit框架、模拟框架和编写代码吗?

如果没有,就不用费心了。测试人员90%的工作不包括编写代码,所以如果它不是您要找的东西,您可以跳过这组知识。

另一方面,如果您喜欢编写代码,不知何故您不考虑成为开发人员,就有可能在测试自动化方面工作,这将需要编程技能。特定的编程语言将取决于收费/应用程序堆栈,但您需要编写代码。

至于xUnit框架,您可能不会编写单元测试(正如提到的dev作业),但是您可能会将它们用作测试的运行程序。例如,这里提到的Selenium不需要编码技巧,如果您使用SeleniumIDE,这只是产品之一。如果您使用SeleniumCore --而不是使用环绕浏览器的api。在这种情况下,您编写的代码将对给定的应用程序执行测试。如果将这些代码放入xUnit框架中,就会有运行程序,并使用它进行报告。

至于模拟对象,您将在非常罕见的情况下使用它们。也许你会为你的应用程序构建自动化框架。但取决于方法,您可以跳过它。

根据新的答案编辑并编辑主要问题。我同意c_maker的观点--您可能不会为应用程序代码编写单元测试,但是可以编写单元测试,因为您的自动化框架软件即使是软件测试其他软件也是软件。同样,正如c_maker所说,如果您使用selenium编写gui级测试--这是验收测试,而不是单元测试。

无论如何,请检查以下链接,以便您现在了解测试自动化工程师的工作情况:

  • 快速概述

  • 更大的解释

  • 所有这些的灵感,很少有pdf描述它
票数 5
EN

Software Engineering用户

发布于 2011-02-13 06:30:19

简短的回答:这取决于组织。

很长的答案:如果没有调查大量的公司,就很难量化QA团队参与编写涉及模拟对象的测试的频率。根据我的经验,大多数中小型软件开发公司倾向于依靠他们的开发人员编写单元、集成和UI测试。这些公司的QA部门通常测试新的特性和增强,以及缺陷是否修复(理想情况下,您的测试正在这样做,但实际上,并不是每个开发人员都编写测试来检查他们刚刚修复的缺陷)。

许多大公司将雇用具有编程经验的QA团队。众所周知,这样的团队会编写UI测试(比如用于浏览器应用程序的Selenium ),因为这样的测试不需要了解代码来检查功能;UI测试通常会检查预期的UI响应和实际的响应。

在某些情况下,QA团队也会为编写单元和集成测试做出贡献,尽管在我的经验中,很少会看到QA完全负责这样的测试。一般来说,对于开发人员来说,编写测试会更容易。也就是说,一个QA团队成员,如果他了解代码和编写单元和集成测试的能力(包括使用模拟对象进行这样的测试),很快就会成为这样一个部门的领导者。

建议:您应该专注于学习良好的UI设计和实践,测试常见和边界案例,并了解用户的一般体验和期望,以此作为QA职业的基础。然而,了解QA的开发方面(即编写带有和不带模拟对象的测试)肯定会对您的职业生涯有所帮助。如果你有时间,学习它。

票数 4
EN

Software Engineering用户

发布于 2011-02-13 13:33:24

以下是QA不能也不应该编写单元测试的几点:

  • 单元测试非常接近生产代码。为了编写单元测试,您需要了解代码到底做了什么。QA人通常没有这样的资格。如果他们这样做了,他们将是开发人员。
  • 单元测试也随着代码的发展而发展。它们需要在代码更改时进行更改,并且需要一起进行版本控制。做一些事情然后等到有人修复单元测试,这将是一场噩梦。这意味着单元测试总是失败。想象一下..。如果提交代码,其他人会启动svn,然后测试就会失败。以这种方式持续集成也是不可能的。
  • 单元测试所做的不仅仅是检查代码是否有效。例如,在TDD中,单元测试帮助我们实现更好的设计。

还有一件事要指出。仅仅因为您在单元测试框架中编写测试,并不意味着它们正在编写单元测试。例如,我们的团队使用Junit框架和Selenium一起编写验收测试。QA编写这些测试是可以的。

票数 3
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/47331

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档