问题标签 [xcode-ui-testing]
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.
ios - 将外部框架连接到 UI 单元测试目标,iOS
所以,我手头已经有现有项目,我正在尝试使用苹果提供的这个新奇特的 UI 测试包来创建一些 UI 测试。问题是测试目标无法访问任何外部框架(我需要对其中一个框架进行一些设置)。在构建阶段添加框架并从主要目标应对框架搜索路径没有任何作用。
经过一天的浏览,我只发现了一件事,那就是“让事情变得有点不同”。通过将 Bundle Loader 和测试主机设置为$(BUILT_PRODUCTS_DIR)/App.app/App,我仍然无法将外部框架导入 test.m,但我可以导入自己为它们执行此操作的类。除非它没有破坏某些东西,否则一切都会很好。现在通过设置 Bundle 和 Host 我的 UI 测试无法执行启动方法:
它因错误而崩溃:断言失败:UI 测试失败 - 应用程序状态仍未终止。
最后,我可以从设置中删除启动方法并手动触发每个测试,因此每次执行前它都会重新启动应用程序,但这个解决方案似乎很错误(特别是对于一些更大的项目)。有谁知道处理这个问题的正确方法?
ios - 尝试运行 UI 测试时 Xcode 7 Beta 2 崩溃
我正在尝试使用 XCode 7 测试新的 UI 测试。这是我编写的测试:
当我尝试运行测试时,Xcode 构建项目,成功,当它进入“测试”阶段时,它崩溃了。我究竟做错了什么?
ios - Xcode UI 测试用例中的延迟/等待
我正在尝试使用 Xcode 7 beta 2 中提供的新 UI 测试编写一个测试用例。该应用程序有一个登录屏幕,它在其中调用服务器进行登录。由于它是异步操作,因此存在与此相关的延迟。
在继续执行进一步步骤之前,有没有办法在 XCTestCase 中造成延迟或等待机制?
没有适当的文档可用,我浏览了类的头文件。无法找到与此相关的任何内容。
有什么想法/建议吗?
ios - XCUIElement - 获取图像值
.Image
我有一个 type和 class的变量XCUIElement
。像这样的东西:
var image = app.descendantsMatchingType(.Image).elementAtIndex(0)
有没有办法可以提取实际图像,以便将其与另一张图像进行比较?
我尝试过调用该value
方法,但它返回一个字符串。将其转换为UIImage
总是失败。
ios - 如何在 Xcode 的 iOS UI 测试中选择选择器视图项?
我有几个项目的选择器视图:“红色”、“绿色”、“黄色”、“黑色”。在我的 UI 测试中,我需要从中选择一个特定的项目“绿色”。我正在使用 Xcode 7 引入的 XCTest UI 测试 API。
到目前为止,我设法在单元测试中向上滑动整个选择器视图。这并不理想,因为它总是将选择器视图更改为底部项目(向上滑动时)。
改变选择器视图的另一种但非常相似的方法是调用pressForDuration ... thenDragToElement
,这不是我想要的。
当我使用 UI 测试记录功能时,它不会记录选择器视图滚动事件。当我点击选择器视图项目时它会记录:
但这在运行测试时实际上不起作用(可能是因为它需要在点击之前先滚动选择器视图)。
这是带有测试的演示应用程序。
https://github.com/exchangegroup/PickerViewTestDemo
更新
现在可以从 Xcode 7.0 beta 6 开始选择选择器视图。
ios - 如何在 Xcode 的 UI 测试中检查网络显示的静态文本是否存在?
我正在使用 Xcode 7 XCTest 中引入的 UI 测试 API。在我的屏幕上,我有一个从网络加载的文本。
如果我只是用exists
属性检查它,测试就会失败。
如果我首先将点击或任何其他事件发送到这样的文本,它确实有效:
看起来如果我只是调用exists
它会立即评估它并失败,因为尚未从网络下载文本。但我认为当我调用该tap()
方法时,它会等待文本出现。
是否有更好的方法来检查是否存在从网络传递的文本?
类似的东西(此代码不起作用):
ios - UIAutomation 和 XCTestCase:如何等待按钮激活
我正在编写一个 UIAutomation 测试用例,我需要等待用户被激活才能继续。似乎没有一种很好的方法来检查按钮以更改为启用状态。
最好的办法是等待 UI 中发生某些事情,然后再检查它的状态?
dispatch_after 和 NSTimer 似乎都不起作用。他们只是阻止然后失败。
ios - 在 XCTest UI 测试中复制拉取刷新
我正在尝试UITableView
在 Xcode 7(beta 3)中使用新的 Xcode UI 测试框架复制拉动刷新
我目前的方法是从表格拖到表格下方我能找到的任何元素。当表格下方有一个固定项目(如 a UIToolbar
orUITabBar
我宁愿不依赖于UITabBar
orUIToolbar
但我无法找到一种方法来执行拉动刷新/拖动操作而不使用XCUIElement
.
但是当我没有工具栏/标签栏并尝试使用单元格拖动时它会失败
这是我的代码的相关部分:
其他失败的尝试:
swipeDown()
(也是多次)scrollByDeltaX/deltaY
(仅限 OS X)
objective-c - 尝试使用 Xcode 的新 UI 测试运行多个测试失败
当我尝试在新的 Xcode beta 中同时运行多个 UI 测试时,它在第一次测试后失败,第一次测试后的每个测试都出现错误“UI 测试失败:应用程序状态仍未终止”。有人对此有修复吗?
ios - 如何在 Xcode 7 上的 UITest 中模拟数据?
有人尝试在新的 Xcode 7 UI 测试中包含模拟数据?
- 您是否使用过特定的框架?
- 你是如何管理目标的?