gpt4 book ai didi

spring - 与 Arquillian 和 Arquillian Spring 框架扩展的集成测试

转载 作者:行者123 更新时间:2023-12-02 11:32:02 26 4
gpt4 key购买 nike

我想建立一个用于集成测试的基础设施。目前我们使用maven引导tomcat,然后执行httpunit测试。但当前的解决方案有一些缺点。

  1. 如果测试通过,提交到数据库的任何更改最终都需要手动回滚
  2. 在集成测试中运行代码覆盖率并不简单(我们使用的是声纳)。

我的目标是:

  1. 允许在测试之间自动回滚(希望使用 String @transaction 和 @rollback)
  2. 简单直接的代码覆盖率
  3. 使用 @RunWith 将从 JUnit 而非外部引导系统
  4. 与实时 servlet 和 javascript 交互(我考虑从 httpuinit 切换到 selenium...)
  5. 合理的执行时间(至少不长于现有的执行时间)

上面的目标对我来说看起来很合理,并且对于许多 Java/J2ee 项目来说都很常见。我正在考虑通过使用 Arquillian 和 Arquillian Spring 框架扩展组件来实现这些目标。另请参阅https://github.com/arquillian/arquillian-showcase/

  1. 有人有 Arquillian 和 Arquillian Spring Framework Extension 的使用经验吗? ?
  2. 您能否分享一些问题的最佳实践和经验教训?
  3. 有人可以提出上述方法的替代方法吗?

最佳答案

我无法完全回答你的问题。只是一些提示

  1. 关于自动回滚。就我而言。使用 liquibase 初始化“hsqldb”或“h2”上的测试数据,可以将其设置为内存模式。那么就不需要回滚了。

  2. 对于阿奎利安。这是一个很好的真实测试方法。我了解到“Arauillian Spring Framework Extension”只是一个扩展。您必须绑定(bind)到特定容器(例如“jboss、glasshfish、tomcat”)才能运行测试。但我不知道如何申请一个基于spring的不需要应用服务器支持的javaSE程序。

我的教训是jboss端口冲突。因为 jboss-dist 设置为默认 http 端口 8080。但是我们公司的代理与8080相同。所以我无法使用maven来获取jboss-dist工件。

希望其他人能够提供更多信息。

关于spring - 与 Arquillian 和 Arquillian Spring 框架扩展的集成测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12143976/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com