我们正在构建混合原生应用程序(Cordova / Phonegap / Angular / Ionic).
我在Protractor中编写端到端测试.当在本地运行时,它们针对由Ionic模拟器(离子服务器)服务的应用程序执行.这很好用.
我还想在Sauce Labs(Appium)托管的平台模拟器上对“打包/构建”应用程序运行相同的测试.这几乎可行.
我现在遇到的麻烦是导航到应用程序.当在本地运行时,在测试开始时我将导航到由ionic托管的应用程序:
browser.get('http://localhost:8100')
这显然不适用于运行混合原生应用程序的模拟器.我在测试启动时检查了浏览器的当前Url,它是:
file:///android_asset/www/index.html#/login
这是有道理的,也是正确的.但如果我试着:
browser.get('file:///android_asset/www/index.html#/login')
坏事发生了.
我正在寻找两种解决方案之一:
1)了解如何导航到Urls以获取在模拟器中运行的混合本机应用程序
要么
2)以某种方式让测试知道它在混合本机cordova容器中运行并跳过导航到起始页面(因为应用程序由appium自动加载).
谢谢.