shell脚本

export PATH=$PATH:$ANDROID_HOME/platform-tools/ #导入环境变量./gradlew clean assembleRelease buildOfficial #!/bin/bash #用这个命令解释器time=10 #变量i=5;timer=6999 #这个构建最大运行时间:msusecaseFilename2=testcasepre #运行测试用例前的准备工作(用例)usecaseFilename="testcaseMedicalRecord" #运行的测试用例devicenamelast=deleteXls=true app=~/.jenkins/workspace/Medclips_AutoVersion_Release/app/build/channels/medchart_for_android_001.apk #要测试的软件testApp=~/.jenkins/workspace/Medclips_AutoTest_Release/build/channels/medclips_android_001_zipalign.apk #测试软件if[ -f true.txt ];then #如果true.tex存在,则删除这个文件rm true.txtfiecho $EXECUTOR_NUMBER #打印EXECUTOR_NUMBER#没有设备时,重启server;BUILD_NUMBER是16的倍数时,重启server、手机设备sleep100#等待100ms./restart-server.sh $time $i #执行这个脚本 if[ $[$BUILD_NUMBER%10] -eq0] ;then #如果构建号BUILD_NUMBER可以整除10,则执行./restart-server-devices.sh文件./restart-server-devices.sh $time $i $ANDROID_HOME $app $testAppfij=5device_list=$(adb devices) #device_list=现在连接电脑的测试设备devicename=$(echo $device_list | cut -d' '-f$j) #获得device_name# cut -d'分隔字符' -f fields <==用于有特定分隔字符-f:依据-d的分隔字符将一段信息分割成为数段,用-f取出第几段的意思;devicestatus=$(echo $device_list | cut -d' '-f$[$j+1]) #获得devicestatuswhile["$devicename"!=""] #当设备名不为空并且设备状态不为下线时doif["$devicestatus"!="offline"];then{adb -s $devicename push $WORKSPACE/testdata/ /mnt/sdcard/ #将$WORKSPACE/testdata/拷贝到手机/mnt/sdcard/上devicenamelast=$devicename; #定义devicenamelastadb-s $devicenamelastshell am instrument -e class com.xsltest.framework.MedSuite-e xmlname $usecaseFilename2-w com.xsltest.framework/com.xsltest.framework.MyTestRunner #在手机上运行usecaseFilename2.xml文件中的用例adb-s $devicenamelastshell am instrument -e class com.xsltest.testcase.testother.deleteCase-w com.xsltest.framework/com.xsltest.framework.MyTestRunner#在手机上运行deleteCase用例}&fij=$[$j+2]devicename=$(echo $device_list | cut -d' '-f$j) #如果有多个设备,获取下面的设备名devicestatus=$(echo $device_list | cut -d' '-f$[$j+1])donewaitwhile[ ! -f $app ];do #如果-f $app是常规文件则为真{sleep10}done#安装测试版本、被测版本,执行用例chmod 777 run-usecases.sh #修改run-usecases.sh的执行权限{./run-usecases.sh $time $i $WORKSPACE $usecaseFilename $app $testApp $deleteXls#运行这个run-usecases.sh文件}&#判断usecase是否运行成功,成功后获取结果;或者超时后结束运行,并获取结果chmod777usecase-results.sh{./usecase-results.sh $time $i $WORKSPACE $timer #运行这个run-usecases.sh文件}&wait


作者:海的那一边
链接:http://www.jianshu.com/p/103f453e1b3e
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值