我有一个大型构建,其中测试有时会阻止创建工件,因为它们会因模块超时而停止或终止构建。我希望我的构建服务器:
- 构建和发布工件
- 运行单元/集成测试
目前,单元和集成测试在每个模块的测试和集成测试阶段以典型的 Maven 方式执行。这对开发人员来说非常有用,但存在构建不足的风险。构建服务器可以通过跳过测试轻松设置构建/发布步骤,我想运行一个仅测试测试,该测试通过仅运行测试的包阶段跳过进程资源。但是,我相当肯定 maven 将再次遍历之前的所有阶段。
我想通过不必要地重建和重新打包我的工件来避免延长已经相当长的构建。
有没有人像这样拆分 maven 构建,以便桌面开发人员从测试集成中受益,而构建服务器/持续集成系统从将有风险的测试推到流程结束时受益,所以我们总是产生工件?
我是否试图以错误的方式分解构建,是否应该考虑在一系列较小的组件构建中更改单一的端到端构建?
谢谢
彼得