相信每一位使用Appium做自动化测试的同学都知道每次正式开始测试前,程序都会自动安装一遍appium setting和unlock,不管手机之前是否已有这两个程序都会傻傻的重装一遍,导致我们的脚本运行起来就慢人一拍,然而这两个程序并无大用,不装也丝毫不会有影响,今天就来学习一下如何禁止安装appium setting和unlock,让我们更快的进入正式的测试。
环境:
appium-desktop 1.5.0(其它旧版本修改的地方可能略有不同)
macOS 10.13.4
1.进入文件夹/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-android-driver/lib/
(windows系统应该也是类似,找到appium的安装目录再根据以上目录结构找下来)
打开文件driver.js
注释以下几句代码,使用command+F找到它们,再在前面添加//即可
await this.adb.uninstallApk(this.opts.appPackage);
await helpers.installApkRemotely(this.adb, this.opts);
await helpers.resetApp(this.adb, this.opts.app, this.opts.appPackage, this.opts.fastReset);
await this.checkPackagePresent();
2.与1同一文件夹
打开android-helper.js
注释以下几句代码,使用command+F找到它们,再在前面添加//即可
await adb.install(unicodeIMEPath, false);
await helpers.pushSettingsApp(adb);
await helpers.pushUnlock(adb);
3.进入文件夹/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-android-driver/build/lib/
打开driver.js
注释以下几句代码,使用command+F找到它们,再在前面添加//即可
return _regeneratorRuntime.awrap(_androidHelpers2['default'].resetApp(this.adb, this.opts.app, this.opts.appPackage, this.opts.fastReset));
return _regeneratorRuntime.awrap(this.adb.uninstallApk(this.opts.appPackage));
return _regeneratorRuntime.awrap(_androidHelpers2['default'].installApkRemotely(this.adb, this.opts));
return _regeneratorRuntime.awrap(this.checkPackagePresent());
4.与3同一文件夹
打开android-helper.js
替换以下几句代码
return _regeneratorRuntime.awrap(helpers.initUnicodeKeyboard(adb)) 替换为
return context$1$0.abrupt('return', defaultIME);
return _regeneratorRuntime.awrap(helpers.pushSettingsApp(adb)); 替换为
return context$1$0.abrupt('return', defaultIME);
return _regeneratorRuntime.awrap(helpers.pushUnlock(adb)); 替换为
return context$1$0.abrupt('return', defaultIME);
5.重启appium服务
在完成以上修改后切记重启服务,否则是没有作用的,然后你还要来说怎么没有用,看我不打爆你的狗头。
感谢阅读,欢迎转载。
如有错误请及时指出,谢谢!
如有问题请留言,我懂的必然会回复!
共勉。