首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我应该在哪里创建一个编码的UI项目?

我应该在哪里创建一个编码的UI项目?
EN

Stack Exchange QA用户
提问于 2014-03-20 14:00:19
回答 3查看 1.7K关注 0票数 4

编码的UI测试应该在他们正在测试的解决方案中(类似于单元测试),还是应该包含在单独的通用编码UI解决方案中,该解决方案只构建一次,并且在任何解决方案需要测试时执行?我应该澄清的是,我们的编码UI测试不是可以通过Visual创建的常规记录,而是由QA工程师开发的手工编码交互类。大多数用于与页面上的元素交互的通用函数都打包到可以在任何测试中引用的DLL中。

基本上,我只是想找出创建编码UI测试基础结构的最佳实践是什么。任何帮助都将不胜感激。谢谢!

EN

回答 3

Stack Exchange QA用户

回答已采纳

发布于 2014-03-20 17:17:54

如果您必须支持您的软件产品的多个版本,我将把测试保存在同一个存储库中。然后,测试将与应用程序本身一起版本。这将使您能够轻松地运行旧版本的测试。

此外,您还希望您的开发人员运行和维护测试。例如,当他们需要更改按钮的ID或标签时。他们不应该需要签出多个存储库来验证他们的代码更改没有破坏任何旧功能。

我唯一能想到的不让测试包含在主代码库中的原因是,所包含的测试数据如此庞大,以至于代码的清查需要很长时间,但是我会将测试数据单独放到另一个回购程序中。

票数 3
EN

Stack Exchange QA用户

发布于 2014-03-20 17:24:10

与任何其他形式的自动化测试一样,这取决于您如何调用它们和需要运行的环境。如果您需要UI用户会话(这是常见的设置),那么您可能不会将它们打包到单元测试中。

需要考虑的一些因素是:

  • CodedUI测试比单元测试慢,因为它们与应用程序GUI交互。这是将它们与单元测试代码分离的原因之一。
  • CodedUI测试可能涉及更大的代码库,因为使用了UI地图或页面映射( CodedUI项目中存储引用特定组件所需属性的部分)。
  • 它们还可能需要在测试/构建系统中存在许多专有的Visual,以便进行编译(通常是MS测试引擎使用的DLL)。在微软的测试实验室生态系统中运行测试并不需要额外的VS许可证。在其他地方运行它们可能会--并且所需的许可是VS Premium或终极的。
  • 通常,应用程序级自动化测试的设置和拆卸要比单元测试复杂得多。通常也要花更长的时间。根据应用程序的不同,您可能需要执行一系列依赖操作才能完成给定的测试。
  • 您还可能需要存储大量的测试数据存储库。这可以减缓整个结帐过程。
  • 是否将编码的UI代码与单元测试代码一起保存与使用单元测试代码执行编码UI代码并不相同--最终,“最佳实践”才是对您的环境最有效的方法。
票数 3
EN

Stack Exchange QA用户

发布于 2014-03-20 16:07:53

我从来没有这样做过,但据我所知,它们是测试,所以它们应该去单元测试所在的地方。

现在,这可能还取决于测试如何运行。我的UI测试需要在具有工作UI用户会话的PC/VM上运行,因此没有必要/使用将它与单元测试放在一起,因为这些测试运行在没有启动UI会话的CI服务器上。

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

https://sqa.stackexchange.com/questions/8088

复制
相关文章

相似问题

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