你可以一起使用Protractor和Appium来测试混合应用程序吗?

时间:2015-08-11 09:05:59

标签: automated-tests protractor appium

这是我的情景。我有一个建立在Angular JS之上的网站。我能够使用量角器自动化网站。但是,在网站上执行的某些操作会反映在Android和IOS设备中。

这就是我想要实现的目标。

像往常一样在网站上运行我的测试,但我想发出命令来测试android和ios应用程序

    /*
    For eg:  
    1. Change password on website using protractor 
    2. Launch android app and check if the password has been changed
    3. Switch back to protractor tests for website
    */
    it('Change password and check on IOS and Android device' , function()
    {
           changePasswordOnWeb();
           OpenMobileAppInDeviceUsingAppium();
           checNewkPasswordOnMobileApp();
    });

有可能吗?如果是,你可以指点我的任何教程吗?

2 个答案:

答案 0 :(得分:3)

要回答您的问题,是的,您可以整合量角器和appium。尽管截至目前,Protractor并未正式支持appium,但您仍然可以通过以下细节实现这一目标。 Protractor docs中提供了一个帮助文件。您需要做的就是更新conf.js文件以包含appium配置,并记住在运行测试脚本之前启动appium服务器。请注意以下几点 -

  1. 启动你的avd

  2. 在您将通过appium调用的avd中安装.apk文件

  3. 使用命令启动appium服务器 - appium&

  4. 更新您的量角器conf.js文件以包含appium android / chrome配置。有关配置的更多详细信息,请参见以下链接。

  5. 以下是有关此内容的更多信息的链接 - Protractor-Appium Setup。希望这有帮助

答案 1 :(得分:2)

好像你可以使用它

  

测试混合应用

readme将帮助您使用Appium设置Protractor - Android / Chrome和Android / Safari。这是video how-to。也许您应该考虑SauceLabs选项。我认为您可以通过在配置的功能部分指定平台来请求iOS和Android设备。

如果您不想使用SauceLabs,可以查看使用Selenium的网格功能。您可以获得适用于iOS和Android的Selenium驱动程序,并将它们连接到运行Protractor方案的集中式Selenium服务器,只需将配置文件中的seleniumAddress更改为指向中央服务器即可。