明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 583|回复: 4

[其它] 持续集成/部署: CI/CD

[复制链接]
发表于 2024-8-24 17:04:43 | 显示全部楼层 |阅读模式
本帖最后由 你有种再说一遍 于 2024-8-25 05:57 编辑

持续集成/部署: CI/CD
在开发的过程中,测试总是烦人的,尤其是对历史上每个测试都进行测试一次,这问题就来了,万一你忘记了历史干了什么呢?你怎么在一小时内把上万个测试跑一次?并且还得跑win7,win8,win10,win11.
浩辰19年版把18年版的bug恢复了.

在开发中使用Git进行版本控制,并且希望利用某个分支推送代码后自动进行编译,这通常涉及到持续集成(Continuous Integration,CI)的技术.
通过自动化的构建和测试来频繁地合并代码变更到集成分支.可以帮助团队快速发现集成问题,确保代码的质量和稳定性.

实现这一流程常用的工具有Jenkins,GitLab CI,Travis CI等.这些工具可以配置为在检测到代码被推送到仓库的特定分支时,自动触发编译和测试脚本.
例如,Jenkins可以配置为监听Git仓库的变化,并在代码被推送到主分支时执行预定义的构建脚本.

即使有新手进入,也不用老鸡带小鸡解释一些注意事项,直接通过测试报告就能知道了.

通过CI脚本,就可以指定各个版本系统,各个版本的CAD,开dwg图,选择,执行命令,输出测试时间.
还可以加入界面自动测试工具.
构建策略:
全量测试:全部自动化完成测试,这样可以把历史上面全部测试进行一次.
变更驱动:只有当某个模块的代码发生变更时,才触发该模块及其依赖模块的构建和测试.

CI脚本示意:
```
#!/bin/bash
# 定义项目根目录
PROJECT_ROOT="/path/to/your/project"
# 进入项目目录
cd $PROJECT_ROOT
# 拉取最新的代码
git pull origin master
# 安装依赖
npm install
# 运行测试
npm test
# 检查测试是否通过,如果没有通过,则退出脚本并返回错误代码.
if [ $? -ne 0 ]; then
    echo "Tests failed."
    exit 1
fi
# 构建项目
npm run build
# 检查构建是否成功
if [ $? -ne 0 ]; then
    echo "Build failed."
    exit 1
fi
# 部署到服务器(示例)
# scp -r build/* user@server:/path/to/deploy
echo "CI pipeline completed successfully."
```

测试脚本示意:
```
[system:all]
[acad08]
file dwg ".\abc.dwg"
select rect 0,0 100,100
cmd "command"
```

完成之后,将发送邮件到测试人员邮箱,或者在CI界面上面显示.
https://www.cnblogs.com/linianhui/category/990845.html
发表于 2024-8-24 18:24:43 | 显示全部楼层
本帖最后由 dcl1214 于 2024-8-24 18:29 编辑

svn git cvs  这些都可以,团队编写lisp,这种工具都是必须的,谁修改了别人的代码,谁不小心删除了别人的代码,都能看到
建立分支,发布补丁包,比较两版代码差异.................

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
 楼主| 发表于 2024-8-24 18:33:15 | 显示全部楼层
本帖最后由 你有种再说一遍 于 2024-8-24 18:34 编辑
dcl1214 发表于 2024-8-24 18:24
svn git cvs  这些都可以,团队编写lisp,这种工具都是必须的,谁修改了别人的代码,谁不小心删除了别人的 ...

本次重点不是git,因为大家都会用git,而是git衍生品,
能够一次性执行全部的单元测试和行为测试,
在cad上面应该没有对应的工具,需要自己写,和配合其他的工具组合写脚本.
发表于 2024-8-24 18:34:31 | 显示全部楼层
你有种再说一遍 发表于 2024-8-24 18:33
本次重点不是git,因为大家都会用git,而是git衍生品,能够一次性执行全部测试行为,这个市面上应该没有对应 ...

如何保证自动化工具没有bug?
 楼主| 发表于 2024-8-24 18:37:29 | 显示全部楼层
dcl1214 发表于 2024-8-24 18:34
如何保证自动化工具没有bug?

工具有bug就修啊...引入概念是为了解决更大的问题,而不是引入更大的问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 06:41 , Processed in 0.191435 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表