go编译单元测试在linux服务器执行

  1. 数据库变更
    2.1 执行gotest变更数据库
    2.1.1 编译gotest为二进制文件
    以下脚本请使用类linux命令行执行,如git bash
    #进入xx_test.go文件所在目录,执行linux交叉编译
    CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go test -c

#创建目标目录,命名规则为gotest-newLogicDescription-禅道caseNum,举例:gotest-washDataForTransScene-123
mkdir gotest-washDataForTransScene-123

复制生成的xx.test文件,以及config文件至目标目录,并压缩(以gotest-washDataForTransScene-123为例)

cp xx.test gotest-washDataForTransScene-123
cp -r config gotest-washDataForTransScene-123
tar -czvf gotest-washDataForTransScene-123.tar.gz gotest-washDataForTransScene-123

#上传至服务器(以生产环境举例)
通过堡垒机将gotest-washDataForTransScene-123.tar.gz上传到APP01的/tmp目录下

创建版本目录(以plan-190514举例)
在/tmp目录下创建此变更的版本目录,命名规则和分支规则一致,举例plan-190514

mkdir plan-190514

#将tar包转到版本目录里(以plan-190514举例)

mv /tmp/gotest-washDataForTransScene-123.tar.gz /tmp/plan-190514

#解压tar包并执行gotset,指定测试函数TestFunc (以plan-190514举例)

cd /tmp/plan-190514
tar -zxvf gotest-washDataForTransScene-123.tar.gz
cd gotest-washDataForTransScene-123
./xx.test -test.run ^TestFunc$ -test.v

你可能感兴趣的:(go编译单元测试在linux服务器执行)