持续部署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>
相关推荐
Incredibuild7 小时前
深入了解 DevOps 基础架构:可追溯性的关键作用
ci/cd·devops
Karoku06612 小时前
【CI/CD】持续集成及 Jenkins
运维·ci/cd·docker·云原生·容器·kubernetes·jenkins
drebander1 天前
Docker 与 CI/CD:自动化构建和部署
ci/cd·docker·自动化
躬身入世,以生证道1 天前
Java技术栈 —— CI/CD工具之Jenkins
java·ci/cd·jenkins
计算机毕设定制辅导-无忧学长3 天前
Docker 与持续集成 / 持续部署(CI/CD)的集成(一)
ci/cd·docker·容器
Long_poem3 天前
【自学笔记】版本控制与持续集成基础知识点总览-持续更新
笔记·ci/cd
小奏技术3 天前
github如何基于workflow实现自动集成测试提升代码质量
后端·ci/cd·开源
Yuanymoon4 天前
人工智障的软件开发-自动流水线CI/CD篇-docker+jenkins部署之道
ci/cd·docker·ai·jenkins
Anna_Tong4 天前
DevOps 进化论:腾讯云 CODING-TM 如何助力企业敏捷转型?
运维·ci/cd·项目管理·腾讯云·敏捷开发·devops·代码托管
ChiLi_Lin5 天前
CI/CD部署打包方法
ci/cd