草庐IT

ios - Xcode 7 中的 UITest : How to test keyboard layout (keyboardType)

我目前正在Xcode中探索新的UITest库,我想测试在UITextView中单击时弹出的键盘是否具有正确的类型(在本例中它应该是.PhonePad).我认为这对于默认的XCUIElement和XCUIElementAttributes是不可行的(关于它们的实际含义,我仍然有点模糊),我不我真的不明白我应该如何扩展以及扩展什么才能对此进行测试。任何帮助将不胜感激!:) 最佳答案 下面是我用来测试电话号码和密码验证检查的代码。letapp=XCUIApplication()lettablesQuery=app.tablestables

ios - UITests Xcode7 : How to adjust date picker with multiply pickers?

在屏幕上我有UIDatePicker。如果有简单的选择器就简单了。可能是这样的:app.pickeWheels["my_id_picker"].adjustToPickerWheelValue("expected_value")但问题是如何在UIDatePicker中调整乘法选择器? 最佳答案 您必须通过指定要调整的选择器的哪个元素/组件来访问不同的轮子。这是我的代码(在Swift2.2中),带有一个更简单的日期选择器,但我相信您可以调整代码以满足您的需要:letcalendar=NSCalendar.currentCalendar

ios - 如何在 UITests 下重新排序单元格?

连同UITests和UITableView我需要重新排序单元格。可能吗?我尝试了myTable.swipeDown()但它是在不响应重新排序的单元格位置调用的。我怎样才能做到这一点?有可能吗? 最佳答案 如果您已正确设置自定义单元格的辅助功能属性,则重新排序控件应该可以访问。我们假设单元格将其可访问性标签/标识符分别设置为“LondonStreet”和“BakerStreet”。您可以通过点击并从一个重新排序控件拖动到下一个重新排序单元格。这些控件的可访问性标识符是根据单元格的信息自动设置的。letapp=XCUIApplicati

ios - 如何在 iOS UItest 中选择本地化的日期选择器项目

我有一个选择器View,其中包含一个在InterfaceBuilder中创建的日期选择器。在属性检查器中选择:模式“日期和时间”。在我的UI测试中,我需要从中选择一个特定的日期和时间。我正在使用Xcode7引入的XCTestUI测试API。我的本​​地化美国日期和时间选择器测试代码如下所示:app.tables.pickerWheels.elementBoundByIndex(0).adjustToPickerWheelValue("Jun29")app.tables.pickerWheels.elementBoundByIndex(1).adjustToPickerWheelValu

ios - 在 iOS UITesting 中获取包含另一个带有静态文本的元素的元素

如何通过静态文本构建查询以获取包含另一个元素的元素。示例:获取第一个包含带有文本“coolcell”标签的表格单元格我需要它,因为我有不同的单元格,我想获得一个包含特定文本的单元格。请注意,我有兴趣获取该单元格,因为我需要确保该单元格包含其他元素。目标是确保标题为“我是一个单元格”的单元格也有一个带有文本“酷”的标签 最佳答案 Getthefirsttablecellthatcontainsalabelwithtext"coolcell"怎么样:letapp=XCUIApplication()app.cells.containing

ios - 如何在 Xcode 的 UITests 下等待,直到某些 View 可见以供点击?

有时,在Xcode的UITests下,编译器会在加载和显示按钮之前尝试点击按钮。然后出现一个问题,如nomatchedfoundfor...。但对此的简单解决方案是:sleep(1)//wait1secondandgive`mybutton`timetoloadandbeaccessibleforuitestsmybutton.tap()但这太可怕了,因为我不能把0.1作为参数放在那里。在很多按钮之前等待1秒让我很烦。有没有办法等到它对uitests可见? 最佳答案 你应该创建一个XCTestExpectation并等待它实现exp

ios - 如何在 Xcode 的 UITest 中访问当前的 UIViewController?

有可能吗?我想在用户对UIView执行一些操作后测试此Controller上的一些属性。 最佳答案 您不应该使用UI测试来测试ViewController中的属性。这是单元测试的工作。在单元测试中,您始终可以模拟控件或手动执行操作。button.sendActionsForControlEvents(UIControlEvents.TouchUpInside)然后您可以执行断言以确保属性更改为正确的值。UI测试主要用于检查“按钮是否按下了正确的Controller”、“将开关关闭禁用了另一个按钮”等。好link此处用于UI测试好li

swift - UITesting Xcode 7 : How to tell if XCUIElement is visible?

我正在使用Xcode7中的UI测试自动化应用程序。我有一个带有XCUIElements(包括按钮等)的ScrollView。有时XCUIElements是可见的,有时它们隐藏在ScrollView的上方或下方太远(取决于我在ScrollView中的位置)。有没有办法将项目滚动到View中或者判断它们是否可见?谢谢 最佳答案 不幸的是,Apple没有在XCUIElement上提供任何scrollTo方法或.visible参数。也就是说,您可以添加几个辅助方法来实现其中的一些功能。以下是我在Swift中的实现方式。首先检查元素是否可见:

ios - 无法使用 xcode 9 在 iphone 4s 模拟器上运行 UITest

项目可以在iphone4s模拟器上正确构建,但尝试在其上运行UITest时出现错误:Thebundle“MyappUITests”couldn’tbeloadedbecauseitdoesn’tcontainaversionforthecurrentarchitecture.Tryinstallingauniversalversionofthebundle.似乎无法找出根本原因,测试在所有其他模拟器上都正常运行。有什么想法吗? 最佳答案 我已经解决了将UITest目标的“iOS部署目标”设置为iOS9.0的问题。它是由Xcode使用

ios - 使用 Xcode 7 运行 UITesting 时出现“NSInternalInconsistencyException”

好的,到目前为止,我还无法在任何测试版中运行此测试。我遇到的一些问题是here和here现在,我觉得我错过了什么。这是我到目前为止的进步在创建新项目时启用“UI测试”选项。这,其实是给我增加了一个目标。所以我应该可以走了——至少我是这么想的。UI测试下的swift文件已经导入了“XCTest”,并且是“XCTestCase”的子类。setup()启动应用程序XCUIApplication().launch()然后我添加了以下内容(通过点击“录制”按钮)然后,我运行了这个测试。整个事情甚至在调用测试之前就失败了,就在使用以下命令在setup()中启动应用程序之后***Assertionf