robotium自动化测试实现脚本命令行执行resign重签名操作
2016-05-05 11:06
267 查看
在使用robotium针对无源码只有apk的情况下,我们需要对被测应用进行重签名操作,以保证与我们的测试apk签名一致。常用的方法是我们手工使用resign.jar包进行重签名操作,但是与Jenkins进行集成的时候这个方法就不合适了。这时候我们就需要用我们使用脚本来实现重签名操作,通过对resign的研究,整理了实现步骤,如下:
1、使用zip工具解压被测应用apk包
2、删除签名文件夹META-INF
3、使用zip重新打包,生成新的无签名的apk包
4、使用命令 jarsigner -keystore C:\debug.keystore -storepass android -keypass android XXXXX.apk androiddebugkey
需要注意的是apk包实际上是压缩的zip包,只要我们安装了zip就可以对apk进行解压、打包。
有了操作步骤我们只需要使用命令实现:
@echo off
unzip -o D:\Baofeng\se_shipper_1.4.2.apk -d D:\Baofeng\se_resign
del/f/s/q D:\Baofeng\se_resign\META-INF
d:
cd Baofeng\supaide_resign
zip -r se_resign.apk *
copy se_resign.apk D:\Baofeng
cd ..
del/f/s/q D:\Baofeng\supaide_resign
jarsigner -keystore C:\debug.keystore -storepass android -keypass android D:\Baofeng\se_resign.apk androiddebugkey
adb uninstall com.supaide.client
adb install D:\Baofeng\se_resign.apk
经过测试可以成功替换apk的签名,并使用robotium脚本在手机端运行case。
1、使用zip工具解压被测应用apk包
2、删除签名文件夹META-INF
3、使用zip重新打包,生成新的无签名的apk包
4、使用命令 jarsigner -keystore C:\debug.keystore -storepass android -keypass android XXXXX.apk androiddebugkey
需要注意的是apk包实际上是压缩的zip包,只要我们安装了zip就可以对apk进行解压、打包。
有了操作步骤我们只需要使用命令实现:
@echo off
unzip -o D:\Baofeng\se_shipper_1.4.2.apk -d D:\Baofeng\se_resign
del/f/s/q D:\Baofeng\se_resign\META-INF
d:
cd Baofeng\supaide_resign
zip -r se_resign.apk *
copy se_resign.apk D:\Baofeng
cd ..
del/f/s/q D:\Baofeng\supaide_resign
jarsigner -keystore C:\debug.keystore -storepass android -keypass android D:\Baofeng\se_resign.apk androiddebugkey
adb uninstall com.supaide.client
adb install D:\Baofeng\se_resign.apk
经过测试可以成功替换apk的签名,并使用robotium脚本在手机端运行case。
相关文章推荐
- ORACLE11g-ORA-12705: Cannot access NLS data files or invalid environment specified
- 'display'、'position' 和 'float' 的相互关系
- 第五次上机实验
- Binary Search Tree Iterator
- 安卓动画 移位,缩放,旋转,透明度简单实现
- IDEA自动编译不用每次make
- C++第5次实验-数组分离
- 设置Java JDK的默认编码为UTF-8
- Struts2 面试题分析
- Java生产者消费者问题
- PHP获取本周第一天日期
- Android的apk文件是怎么怎么生成的?
- Qt:事件和事件循环
- 单例模式的实现方式
- 二分查找
- Swift的unowned字段
- 运输层TCP/UDP 笔记
- TCP慢启动、拥塞避免、快速重传、快速恢复
- linux下批量新建账号及设置密码
- java中的private到底有什么用 ;private特点;