问题标签 [appium-ios]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
698 浏览

appium - Appium:我可以在 appium 的离线模式下进行验证吗?

我是 Appium 世界的新手。我有一个 ios 本机应用程序,它具有离线功能,例如我可以离线并执行一些操作,例如添加书签。所以我下线后需要做一些动作,我可以用appium来做吗?如何离线并在本机应用程序中执行一些操作,然后使用相同的会话/实例上线,然后在应用程序上执行更多操作?

0 投票
3 回答
2568 浏览

automation - 无法在真实设备上使用 Appium 在 iOS hyprid 应用程序自动化中识别 WEBVIEW 中的元素

我试图使用 ionic2/Angular2 和 typescript 自动构建混合应用程序。

我正在使用 C# 编写代码。测试在 BDD - specflow 版本:iOS:9.3.1 Xcode:7.3 Appium:1.4.13

将上下文切换到 WEBVIEW 后,我无法识别元素。

使用以下代码调用 IOSDriver

将能力设置为

我是否以正确的方式设置功能?

  1. 尝试的解决方案:
    1. 我检查了使用 browserName 功能作为空白/野生动物园,但没有奏效
    2. 此外,我安装了 ios-webkit-debug-proxy 并在我的 Mac 上使用后台终端启动代理
  2. 问题是我无法识别 WEBVIEW 中的元素。

我在做什么

启动应用程序后,在 appium 检查器中,我可以看到所有元素,我试图单击文本框输入一些值

文本框的 Xpath(我可以在 appium 检查器窗口中查看):“//UIAApplication 1 /UIAWindow 1 /UIAScrollView 2 /UIAWebView 1 /UIATextField 1

var contextNames = driver.Contexts

正在给我视图列表(在我的情况下为 2 个视图:NATIVE_APP、WEBVIEW_1)WebView 上下文从 1、2、3 等动态更新。

我一打电话

并刷新我无法看到/识别单个元素的 appium 检查器。一切都消失了。

为什么切换到 webview 后我无法看到/识别元素。(注意:一旦我切换回 driver.Context="NATIVE_APP" 每个元素都会在 appium 检查器中可见,但我仍然无法点击)

它显示错误为“使用给定的搜索参数无法找到元素”

当我尝试使用 appium 检查器点击或发送键时,手动也不允许我这样做(在使用检查器按钮手动启动 tha 应用程序之后)。这里有什么问题。帮助将不胜感激

Appium 检查器截图:

在此处输入图像描述

appium 窗口中显示的错误消息:

在此处输入图像描述

这是Appium的完整日志(错误)

无法识别 WEBVIEW 中的元素时的 Appium 日志链接

0 投票
1 回答
1147 浏览

ios - 获取适用于 iOS 的文本字段 Appium

我正在尝试在 appium 测试用例中访问我的应用程序登录页面的文本字段。目前我正在使用“恢复 ID”来识别文本字段并将其用作唯一标识符。

目前 appium 无法通过“Restoration Id”找到文本字段并给出错误

有人可以告诉我如何通过使用方法 findElementById() 并将唯一 ID 传递给它来获取文本字段。如何从情节提要中的 UITextField 获取该 ID,以及如何在情节提要中指定该 ID。

0 投票
1 回答
235 浏览

automation - Executing 'find_element' atom in default context error while trying to sendkeys in WEBVIEW of hybrid app using Appium

After launching the hybrid app build in Ionic2/Angular2/Typescript, I am changing the context using below code:

After switching context I tried to use xpath from Appium inspector as well as from safari develop window

Appium Xpath = //UIAApplication1/UIAWindow1/UIAButton[2] Safari Xpath = //*[@placeholder='Username' and @class='ng-untouched ng-pristine ng-valid']

As I am working on hybrid app

For more details on the capabilities used and screenshot related to the error please navigate to link

Getting below error

0 投票
0 回答
186 浏览

testing - 为什么在 WEBVIEW 上下文中,Appium 生成的 xpath 不能使用 iOS 模拟器工作?

我想知道为什么在 WEBVIEW 上下文中,Appium 生成的 xpath 不能使用带有 java 的 iOS 模拟器来编写我们的脚本?另一个问题是有没有办法让 appium 记录器生成的代码在我们的 java 类中工作,因为现在我们在 WEBVIEW 中没有机会使用 appium,我们必须查看 html 代码来创建代码。

PS:我已经尝试将上下文更改为 NATIVE 然后返回 WEBVIEW_1 但没有任何更改。

0 投票
1 回答
1251 浏览

node.js - Appium Grid hub 向节点发送错误的功能集

我正在尝试使用以下节点配置来配置 Appium Grid。

-Hub 正在从 testng 接收正确的功能,但集线器正在向我仅有的两个节点发送错误的功能。(节点配置如下)

请建议我哪里出错了。

模拟器节点配置

运行节点的命令: node appium.js --port 4723 --nodeconfig G:\Selenium2\Grid\AppiumEmulatorNode.json

真实设备节点配置

运行节点的命令:node appium.js --port 4724 --nodeconfig G:\Selenium2\Grid\AppiumRealDevice.json

测试文件

电网枢纽输出

模拟器节点输出

此节点从 Selenium Grid 接收错误的数据集。它应该接收仿真器功能,但它已接收真实设备功能

真实设备节点输出

此节点从 Selenium Grid 接收错误的数据集。它应该接收真实设备功能,但它已接收仿真器功能

0 投票
0 回答
626 浏览

java - 无法在 Mac OS X El Capitan 版本 10.11.4 上使用 Appium 1.5.2 将 .app 文件加载到 iOS 模拟器中

我正在尝试将 .app 文件加载到 ios 模拟器中,以在 Mac OS X El Capitan 版本 10.11.4 上测试 Cordova 混合应用程序。使用java + testng

我尝试了混合应用程序,但它不起作用。然后我尝试了一个原生 ios TestApp 来检查它是否是因为它是一个混合应用程序。但这也失败了在这两种情况下,我都从 Appium 服务器收到以下错误:

我可以从命令行将相同的应用程序 TestApp 加载到 ios 模拟器中

所以这似乎是 Appium 服务器中的一个问题。

appium 日志是

有没有人遇到过这个 appium 无法提取 Info.plist 文件的问题,即使它存在于 .app 文件中并且 xcrun 可以成功安装它?

0 投票
1 回答
555 浏览

appium - 滑动在 ios 设备中不起作用

我有一个应用程序想要允许来自设备事件的联系人。我用过 ( autoAlertAccept,true) 但这对我不起作用。我正在使用appium 1.5.2,甚至我想刷那个特定的联系人来与那个特定的联系人聊天或打电话。当我使用:

我发现了一些异常

0 投票
2 回答
220 浏览

ios - 我想为 Appium 做一个测试实验室设置

我想为 Appium (Android & iOS) 做一个自动化测试实验室

问题: 1. 根据 Appium 的限制,我们可以从 Machine 访问 Single device (ios)。

在这种情况下,如果我将多个 Ios/Android 设备连接到 MAC 机器(服务器),我如何从其他机器访问?

如果我将 Windows 机器作为服务器,我可以从 MAC 机器访问和运行脚本吗?

0 投票
0 回答
143 浏览

appium-ios - 使用 appium 从 iOS 驱动切换到 Safari 驱动

我有一个应用程序,我可以在其中使用linkedin、facebook、Google+ 和 twitter 进行注册。当我单击任何按钮时,页面重定向到 safari 浏览器并打开登录页面我无法与 safari 浏览器中的电子邮件 ID 和密码以及登录按钮进行交互我正在使用IOSdriver 并且 appium 版本是 1.5请帮助我我该怎么做与 IOS 驱动程序和 safari 驱动程序交互?