您可以同时使用 Protractor 和 Appium 来测试混合应用程序吗?

2024-04-13

这是我的场景。我有一个基于 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();
    });

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


为了回答你的问题,是的,你可以集成量角器和appium。尽管目前 Protractor 尚未正式支持 appium,但您仍然可以通过以下详细信息使其成为可能。 Protractor 文档中有一个帮助文件。您需要做的就是更新conf.js 文件以包含appium 配置,并记住在运行测试脚本之前启动appium 服务器。请注意以下几点 -

  1. 开始你的avd

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

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

  4. 更新量角器 conf.js 文件以包含 appium android/chrome 配置。有关配置的更多详细信息可以在下面的链接中找到。

这是有关此内容的更多信息的链接 -量角器-Appium 设置 https://github.com/angular/protractor/blob/master/docs/mobile-setup.md。希望这可以帮助

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

您可以同时使用 Protractor 和 Appium 来测试混合应用程序吗? 的相关文章

  • 如何在teamcity中运行e2e测试,如何在后台运行服务器并运行e2e

    如何在 teamcity 构建步骤中运行我需要的服务器以及 e2e 测试 我对我的 Angular 2 应用程序进行了 Protractor e2e 测试 我有一个有趣的 Angular cli 和 gulp 组合 但请耐心等待 这是我在本
  • 包含任何文本的元素的量角器预期条件

    有没有办法检查元素中是否有任何文本 我已经找到了textToBePresentInElement但此函数会检查指定值 如果失败则不会返回正确的错误 我通过 API 填充该元素 并且稍后加载它 因此我希望浏览器等到元素中出现任何信息 然后检查
  • 无法在真实设备上的 iOS 10 上运行 Appium 测试

    自从将我的设备和 xCode 更新到 iOS 10 和 Xcode 8 以来 我一直无法在真实设备上成功设置 Appium 测试 不过 我在模拟器上运行得很好 以下是我的功能设置 DesiredCapabilities cap new De
  • AngularJS Protractor - 使用 Ng-Click 绑定查找页面上的元素

    我的页面上有一个按钮 如下所示
  • 如何使用 BDD 构建 CRUD 测试

    我陷入了一个进退两难的境地 试图找出答案best构建我的 CRUD 测试的方式 在我的应用程序中 用户可以创建多种类型的 任务 我当前的实现如下所示 Scenario Create Task Type A Given I am on a u
  • Cypress 获取 href 属性

    我有一个测试用例 其中有一个在新选项卡中打开的链接 由于 Cypress 不支持多个选项卡 我想获得href该链接的属性 然后在同一选项卡中打开它 我正在尝试这样做 但由于某种原因它不起作用 it Advertise link should
  • 茉莉花量角器打字稿在其块中发生预期故障后继续执行

    我正在使用 Protractor jasmine 框架和打字稿 所以我在describe中有多个it块 所以在每个it块内有很多方法或期望条件我正在验证 因此 当前当其中一个期望失败时 整个块就会终止 所以即使在一步失败后我也想继续执行 下
  • Protractor:彻底清除浏览数据

    我正在寻找一种使用 Protractor 完全删除所有 cookie 会话 状态 cookie 存储等的方法 基本上 我想在量角器中完成与用户相同的事情 方法是转到 设置 gt 清除浏览数据 browser manage deleteAll
  • 如何使用 Selenium WebDriver 和 Java 单击按钮?

    以下是按钮的 HTML 代码 span span
  • rspec 中的相关测试

    我编写功能测试 并且我需要进行的测试取决于之前测试的通过情况 假设我有一个按钮 可以打开一个窗口 其中有一个功能 也就是说 为了检查此功能 我需要首先检查按钮的正确操作 即打开窗口或不起作用 因此 我需要这样做 如果单击按钮时测试失败 则测
  • 每个环境使用不同的 URL 运行相同的 Testcafe 测试

    我正在研究 TestCafe 概念验证 我在一个测试环境中进行了一些测试 我需要一种方法来在最多 3 个具有不同 URL 的不同测试环境中运行相同的测试 对于这种情况有最佳实践吗 解决方案是在 testcafe 命令行上添加自定义选项 例如
  • 使用 Testcafe 访问 OpenVPN 限制的网站

    有一个网站只有在运行 OpenVPN Connect 2 1 3 111 配置文件时才能访问 我需要使用 Testcafe 访问该网站 但到目前为止我还没有找到任何有关使用 Testcafe 与 VPN 的文档 有什么我可能错过的吗 测试通
  • 量角器错误“WebDriverError:指定的超时类型无效:ms”

    如果没有任何更改 我的量角器测试开始出现此错误 14 07 05 E runner Unable to start a WebDriver session 14 07 05 E launcher Error WebDriverError I
  • 在 pytest 中参数化并运行单个测试

    如何从配置了参数化的集合中运行单个测试 假设我有以下测试方法 pytest mark parametrize PARAMETERS LIST PARAMETERS VALUES def test my feature self param1
  • 在 Android 中使用 appium 在一个会话中自动化多个应用程序

    如何在 Android 中使用 appium 在一个会话中自动化多个应用程序 假设想要自动化一个计算器应用程序 然后是一个设置应用程序 如果您正在谈论使用同一会话同时自动化多个应用程序 那么这是不可能的 因为一个会话只能自动化一个应用程序
  • 在基于 AngularJS 的 Web 应用程序中使用 Selenium

    我逐渐知道 Selenium 是 UI 测试之父 现在我的问题是为什么 Angular 团队开发了 Protractor 对于基于 AngularJS 的 Web 应用程序 Selenium 不能完成同样的工作 Protractor 所做的
  • 如何滚动到 div 元素底部 Selenium Webdriver

    我有一个用例 其中网页上有一个 div 元素 只要您单击链接 它就会出现一个弹出对话框 它不是实际的弹出窗口 它类似于当您单击链接进行检查时在 Facebook 中打开的对话框 对您的帖子的反应等 我使用 Selenium WebDrive
  • 处理量角器中的未知错误

    我有一个protractor通过配置多个浏览器进行设置multiCapabilities 在 browserstack 上运行测试 我的主要量角器规格 测试之一包含以下内容afterEach block afterEach function
  • 在 Protractor / Webdriver 中等待页面重定向

    我有一个测试 单击按钮并重定向到用户仪表板 当发生这种情况时 Webdriver 返回 javascript error document unloaded while waiting for result 为了解决这个问题 我插入brow
  • Angular JS,量角器定位器,获取元素的直接子元素

    我有一个网格 我想从中选择所有行 但不选择行内的任何元素 这些行只是 div 没有类等 类似这样 为简洁起见 删除了内部内容 div class grid div div div div div div div div div div di

随机推荐