好的,关于这个的一些背景故事。我负责将项目从(糟糕的)ant 构建转换为 maven 构建。我的第一步是简单地将最终的 EAR 重制为与 Ant 的相似,以免给其他团队带来麻烦。
我做得很完美(感谢你们,他们之前回答了几个问题)。
但是,现在我碰壁了。 Ant 测试。
他们曾经直接从 Eclipse 运行 ant 测试。根据我从他们的 build.xml 中收集到的信息,他们创建了一个小 jar,部署它(在 Jetty 上),测试它,然后取消部署。
我一直在尝试使用 maven 进行相同的测试(认为不是以相同的方式),但无法重现它。但是,我认为我正在以错误的方式接近它。我只是使用 surefire 插件针对已经部署在我的 JBoss 上的 EJB 运行测试。
我为什么要这样做?因为我希望通过测试成为在 JBoss 上成功部署的条件。如果它没有通过测试,我不想部署它。制作一个 jar,然后部署不会事先测试,只是在之后(因为我将针对已编译和部署的 ear 对其进行测试)。有什么提示吗?
我是否应该遵循他们(其他团队)曾经遵循的相同模式?或者我可以换一种方式吗?
感谢您的任何回复!
安德烈·卡多佐 PS.:抱歉我的英语不好,这不是我的母语!
最佳答案
解决方案是创建一个单独的模块,其中包含集成测试,这意味着在您的情况下启动 JBoss、部署存档、对其运行测试并关闭 JBoss。
关于testing - Maven 测试与 ant 测试(现在更具体),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6981346/