持续部署CICD

目录

(1)CICD的开展场景

(2)项目实际应用


CICD 是持续集成(Continuous Integration)和持续部署(Continuous Deployment)简称。指在研发过程中自动执行一系列脚本来降低开发引入 bug 的概率,在新代码从开发到部署的过程中,尽量减少人工的介入。

(1)CICD的开展场景

1.编译部署

代码提交后的自动构建、自动部署、构建部署结果通知

目前开发leader merger(合并)代码之后即可直接自动构建,自动部署,以及部署结果通知

2 单元测试

开发通过 Junit编写单元测试脚本,开展单测,获取单测报告、jacoco代码覆盖率报告(提测前的两个报告+需规:代码设计方案+Sonar测试报告);

测试覆盖率 :一种测试技术指标,它表明我们的测试用例是否真正完全覆盖了应用程序代码中的各种可能以及在运行这些测试用例时执行了多少代码。测试覆盖可以分为:语句覆盖、分支覆盖、路径覆盖、条件覆盖、边界值覆盖;通过jacoco插件,可以衡量单测的代码覆盖率,得到测试覆盖率结果

3 代码扫描

代码提交自动触发代码扫描,扫描结果计入项目质量,记录跟踪问题,直至问题闭环解决

4 自动化测试

5.全链路测试展示

(2)项目实际应用

1.工程引入单元测试

工程配置文件pom.xml文件中配置surefire插件

java 复制代码
<plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.5</version>
            <configuration>
                <skipTests>false</skipTests>
            </configuration>
        </plugin>
</plugins>

其中skipTests标签为:跳过单元测试标签(false表示不跳过单元测试,做单元测试需要执行单测脚本,故需设置为false或删除此标签)

2.工程pom.xml文件引入:jacoco插件

java 复制代码
<groupId>org.jacoco</groupId>
    <artifactId>jacoco-maven-plugin</artifactId>
    <version>0.8.2</version>
    <executions>
        <execution>
            <goals>
                <goal>prepare-agent</goal>
            </goals>
        </execution>
        <!-- attached to Maven test phase -->
        <execution>
            <id>report</id>
            <phase>test</phase>
            <goals>
                <goal>report</goal>
            </goals>
        </execution>
    </executions>
</plugin>
相关推荐
techzhi9 小时前
Apifox CLI + GitLab CI:接口自动化测试实施记录
java·ci/cd·kubernetes·gitlab·yapi·运维开发·fastapi
萧曵 丶13 小时前
CI/CD 流程
git·ci/cd
ICT董老师14 小时前
在Ubuntu 22.04上使用GitLab和Jenkins部署CI/CD的完整过程
ubuntu·ci/cd·kubernetes·gitlab·jenkins
一念一花一世界2 天前
Arbess项目实战 - 基于GitLab搭建Node.js项目自动化流水线
ci/cd·node.js·自动化·gitlab·arbess
南村群童欺我老无力.2 天前
Flutter应用鸿蒙迁移实战:性能优化与渐进式迁移指南
javascript·flutter·ci/cd·华为·性能优化·typescript·harmonyos
进击的小菜鸡dd3 天前
互联网大厂Java面试:从Spring Boot到微服务架构的场景化技术问答
java·spring boot·redis·ci/cd·微服务·消息队列·mybatis
一念一花一世界3 天前
企业级CI/CD工具选型:Argo CD vs Tekton vs Arbess
ci/cd·argocd·tekton·arbess
oMcLin3 天前
如何在 RHEL 8.5 上部署并优化 Jenkins CI/CD 流水线,提升跨平台自动化部署的速度与稳定性?
ci/cd·自动化·jenkins
卓码软件测评4 天前
软件首版次认定测试机构:【Apifox与UMI框架结合:实现OpenAPI规范与Mock服务的自动化流水线】
测试工具·ci/cd·性能优化·单元测试·测试用例
cly14 天前
Jenkins CI/CD 平台详解
运维·ci/cd·jenkins