作者achaos (热~~~~)
看板java
标题Re: [问题] 如何使用maven实践整合测试
时间Sun Jun 20 11:12:03 2021
对於问题1:
那我先假设你有一个正式环境,包含一个正式区部署主机,一个正式区DB
那你要做整合测试,应该要另外准备一套跟正式区类似的环境,所以会有另外一台整合测
试区部署主机,与一个整个测试区DB
然後依照你的流程,把程式部署到整合测试区,连接整合测试区DB後,进行整合测试。
最後依照测试结果,决定要不要部署到正式区。
对於问题2:
对於整个系统回到上个版本是很困难的事情,程式是最简单的,你可以将上次部署成功的
程式标记,测试失败的时候就使用上次部署成功的程式进行部署
但是如果牵扯到资料库的话,就会变得非常复杂,我目前是大概知道怎麽做,不过表达不
出来,有兴趣可以参考一下下列网址
https://www.facebook.com/groups/DevOpsTaiwan/permalink/4018716704882012
对於问题3:
你的部署程式需要有个API,然後你的测试程式需要有个探针程式,探针程式会去呼叫API
,如果失败代表程式还没有启动,成功了就开始执行整合测试。
---------------------------------------
不过我对於你的步骤1一直觉得有点奇怪
正常应该是jenkins下载程式码,然後在有pom.xml这个档案的目录下执行
integration-test verify指令
所以会在你下载程式码的那台主机执行整合测试(这台主机需要可以连到你需要的服务,
例如测试区DB),整合测试完成後再开始部署工作
所以第一步应该不需要部署才对。
※ 引述《ht5603 (Mike)》之铭言:
: 我想要替我的专案增加整合测试,但不知道如何能完全地自动化进行测试、部署,
: 对於整个流程还是没办法想出较好的实践方式。
: 主要用到的项目有:maven、cucumber测试套件及jenkins
: 我目前的想法是
: 1.先将程式部署到server启动
: 2.执行maven指令 integration-test verify,执行整合测试
: (这个已经做完,可以顺利跑测试案例)
: 3.测试结果,成功:打包部署到server、失败:不打包也不部署
: 但目前有卡到几个点让我不知道怎麽办
: a.我想要测试的结果成功才打包部署,但步骤1就先做掉了,
: 这样不是已先把程式部署上去了吗?
: b.假如非得先部署上去,那整合测试fail,那要如何退回上一个版本?
: c.同上,假如得先部署。打包、启动server都需要时间,那我要如何
: 自动地开始执行测试?
: 目前是我自己等server起好,再手动执行maven指令测试。
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.230.31.139 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1624158725.A.CA6.html
1F:→ ht5603: 我们环境的确比较不一样,只有一台jenkins只负责纯打包完, 06/20 12:20
2F:→ ht5603: 再丢到不同环境的主机启动。而且我想保留目前要先请user人 06/20 12:21
3F:→ ht5603: 工测完才能进到下个环境的步骤。这架构及各个环节没切割 06/20 12:23
4F:→ ht5603: 完全及自动化,我想这可能也是我为何这次卡住的原因 06/20 12:24