要想使用selendroid运行自己的native应用,过程如下:
第一步:
由于要测试的应用采用的不是本机的debugkeystore的签名,所以我需要先用re-sign.jar处理一下测试apk文件,把apk文件变为A-debug.apk;
第二步:
java -jar selendroid-standalone-0.12.0-with-dependencies.jar -app A-debug.apk,由于生成的A-debug.apk无证书,所以安装会失败,不过没关系,执行第二步后会生成一个
resigned-A-debug.apk,这个文件是签名加证书的,可以安装成功;
第三步:
安装resigned-A-debug.apk文件到模拟器/设备上,然后运行脚本就可以打开native app了。
脚本如下:
from selenium import webdriver
def main():
desired_capabilities = {'aut': 'com.aaa.bbb:1.0.0'}
driver = webdriver.Remote(
desired_capabilities=desired_capabilities
)
driver.implicitly_wait(30)
#启动app
driver.get('and-activity://com.aaa.bbb.StartActivity')
#退出app
driver.quit()
if __name__ == '__main__':
main()