当前位置: 首页 > 知识库问答 >
问题:

无法通过Appium ruby(本机iOS应用程序)中的“按id查找元素”点击出生日期字段以实现自动化?

常甫
2023-03-14

在应用程序中获取以下错误

REMOTE] Could not connect to WebKitRemoteDebugger server

info: --> GET /wd/hub/session/81921036-ccb1-4ca3-9b97-319145e345fe/contexts {}
info: [debug] [REMOTE] Getting WebKitRemoteDebugger pageArray
info: [debug] Responding to client with error: {"status":13,"value":{"message":"An unknown server-side error occurred while processing the command. (Original error: connect ECONNREFUSED)","code":"ECONNREFUSED","errno":"ECONNREFUSED","syscall":"connect","origValue":"connect ECONNREFUSED"},"sessionId":"81921036-ccb1-4ca3-9b97-319145e345fe"}
info: <-- GET /wd/hub/session/81921036-ccb1-4ca3-9b97-319145e345fe/contexts 500 2.415 ms - 293

使用Xcode:7.2 Appium:1.6的版本

所需功能:需要"appium_lib"def caps{caps:{DeviceName:"YIP-25",平台名称:"iOS",全复位:"false",不复位:"true",应用程序:(File.join(File.dirname(文件), "<--plhd-2/>")), Packagename:"br.com.fs.ensinabyfs", newResordTimeout:"3600", autoGrant权限:"true",appium_lib:{等待: 20, debug: false, } } } end defserver_url'http://0.0.0.0:4723/wd/hub'end Appium::Driver.new(大写)#在驱动程序中传递appium的能力ppium.promote_appium_methods对象#使所有appium_lib方法从步骤$driver.start_driver#在测试开始前启动appium驱动程序

请帮我解决这个问题?

共有1个答案

卫琛
2023-03-14

将xcode更新为8.x最新版本。
将应用程序更新为1.6.4最新版本。
将应用程序更新为最新版本。

安装appium_doctor

npm install -g appium-doctor
appium-doctor --ios

这将检查appium ios设置的健康状况

然后用XCUITest而不是UIAutomator运行测试

以下是您可以使用的功能:

您需要使用功能

caps = {
      :platformName => "iOS",
      :deviceName => "iPhone 6",
      :platformVersion => "9.3",
      :app => app_path,
      :noReset => 'true',
      :newCommandTimeout => "30",
      :automationName => "XCUITest",
      :sendKeyStrategy => 'setValue'
  }

现在完成了,一旦appium开始,就试着像普通的web元素一样找到你的元素driver.find_element(id:'dob')。单击

希望能有帮助!!

 类似资料:
  • 问题内容: 以下定位技术之间有什么区别? 而且,从 性能角度来看 ,哪种方法是通过id定位元素的最快方法? 问题答案: 您的问题很难回答,肯定会给出一个结论性的答案。实际上,我很想将此问题标记为“太宽泛”,其他答案和评论也支持该问题。 以您的为例。纵观Selenium来源, 大多数 驱动程序只是获取您提供的ID,然后将其传递给有线协议: 如您所知,每个浏览器供应商都在单独的二进制文件中实现自己的有

  • 问题内容: 如果我使用它,它就会出现..很明显,屏幕上没有任何“找到你”的信息。我究竟做错了什么? 问题答案: 问题是您试图在元素存在之前对其进行访问。您需要等待页面完全加载。一种可能的方法是使用处理程序: 不过,大多数常见的JavaScript库都提供DOM就绪事件。这样比较好,因为也要等待所有图像。在大多数情况下,您不需要这样做。 另一种方法是将script标签放在您的-tag 之前,因为它前

  • 问题内容: 我使用上面的python代码来练习一些基本的Selenium操作。我找不到任何元素,无论是名称还是ID。不管我尝试什么,我总是会遇到相同的错误,这表明我要查找的元素不存在。(想法是按一下其中一个按钮…) 这是网站html代码的一部分: 这是所说的网站(链接断开) 任何帮助将不胜感激。 顺便说一句,这是我尝试运行的第一个使用Selenium的程序,是否有可能需要更改某些设置或需要安装其他

  • 问题内容: 我需要将数据发布到php页面,然后我想获取响应中某个div的文本,但似乎无法正确设置。我对jQuery不太满意,但是我通常可以很快地解决问题……我已经花了一分钟的时间,尝试了所有我发现的东西……我想我只是缺少了正确的东西组合。 这是输出,红色框是我想要的响应… !! [这张照片看起来真的很小……当我拍的时候并不是那么小。我希望它仍然可读] [1] 这样做: 回应是… 我尝试删除样式部分

  • 我在亚马逊购物应用上测试过。我有一个问题后滑动找到一个元素。因为列表视图太长了。我需要滚动(使用刷卡API)。但是在我滑动之后,我不能再点击元素了。它没有返回错误,但应用程序没有响应。 函数ScrollToElement()用于滑动到搜索元素。我试着用触控动作轻拍,但没有希望。我试图找到一个准确的(372466)位置,但效果并不理想。提前谢谢。

  • 当我试图将元素放入元素中时,我面临一个问题。我尝试了两种方法来实现这一点,但不幸的是没有成功。 上面的代码获取所有DOM元素列表。 方法1: 当我尝试这个方法时,它总是返回第一个元素的文本,而不是相应的元素文本。 在搜索时,我发现了一个链接,有人问了和我一样的问题。 Selenium Webdriver在子元素中查找元素 当我尝试答案时,它给了我一个空白数组。 结果: 请建议我如何实现这一点,如何