With Robotium it is possible to run test cases on applications that are pre-installed. For this to work you need to resign the pre-installed application with the same certificate signing of your test project. That requires you to have a rooted phone as you must have access to the /system/app folder on the device.
Observe that some pre-installed applications do not function properly when re-installed with a new certificate signing. An example is the contacts application (Contacts.apk) that does not show up when re-signed.
Details
There are some steps that you need to follow to make it work:
1. Log in as root: adb root
2. Remount: adb remount
3. adb pull /system/app/X.apk (Replace X with the name of the application)
4.Resign X.apkso that it has the same certificate signing as the test project
5. adb pull /data/system/packages.xml
6. Open packages.xml and remove:
<package name="com.X"> .....
</package>
7. Push packages.xml back to device: adb push packages.xml /data/system
8. Restart your device
9. Push the resigned X.apk back to the device: adb push X.apk /system/app
10. Follow thedetails section
本文介绍如何使用Robotium对预安装的应用进行测试。主要步骤包括:获取root权限、重新签名应用程序使其与测试项目证书一致,并修改设备上的包配置文件。注意某些应用如联系人应用可能无法正常工作。
189

被折叠的 条评论
为什么被折叠?



