标签: xcode-ui-testing

针对Xcode 7之前项目的Xcode 7 UI测试用例

Apple在Xcode 7中简化了iOS UI测试.

使用新的Xcode 7项目,要获得iOS UI测试的完整配置,您只需在创建项目时选中"包含UI测试".

对于在Xcode 7存在之前创建的项目,在Xcode 7中获得相同的步骤是什么?

ios swift xcode7 xcode-ui-testing

9
推荐指数
1
解决办法
3121
查看次数

Xcode UI 测试如何在自定义类文本字段中键入文本

在我的项目上使用 Xcode 开始 UI 测试,遇到了障碍。

有一个UITextField调用的子类,RSCustomTextField它有一些 UI 自定义。添加到RSSearchHeadView包含文本字段和按钮的 。

所以我无法查询文本字段,app.textfields["Search field"]因为它是一个自定义类,它显示为app.otherElements["Search field"]

它在searchField.typeText("abc")显示错误时崩溃元素和任何后代都没有键盘焦点。.

即使在tap()元素之后。请注意,我还尝试在子类和文本字段上设置可访问性特征,UIAccessibilityTraitSearchField但没有区别。

func testSearchIcon() {

  let searchField = app.otherElements["Search field"]    
  searchField.tap()

  searchField.typeText("abc")
  app.keys["delete"].tap()

  XCTAssertFalse(searchDubizzleElement.hittable)
}
Run Code Online (Sandbox Code Playgroud)

debugDescription在应用程序上打印提供以下输出:

Element subtree:
 ?Application 0x7fc1b3f3aa00: {{0.0, 0.0}, {375.0, 667.0}}, label: 'myappname-masked'
    Window 0x7fc1b3f439b0: Main Window, {{0.0, 0.0}, {375.0, 667.0}}
      Other 0x7fc1b3f55c20: traits: 8589934592, {{0.0, 0.0}, {375.0, 667.0}}
        Other 0x7fc1b3f43440: traits: 8589934592, {{0.0, 0.0}, {375.0, 667.0}} …
Run Code Online (Sandbox Code Playgroud)

ios swift xcode7 xcode-ui-testing

9
推荐指数
1
解决办法
2076
查看次数

使用Xcode的UITesting更改模拟器位置

只是想知道是否有可能在xcode中使用UITesting以某种方式在模拟器的自定义位置编码.我们有一个应用程序涉及许多位置更改,如果我们可以自动化位置更改作为我们的UITesting套件的一部分将是很好的.

xcode location ui-testing geolocation xcode-ui-testing

9
推荐指数
1
解决办法
854
查看次数

UI测试+ postNotificationName +永远不会到达观察者+ Xcode 7

我有用于测试MyApp的UI测试目标.要测试特定的MyApp条件,我需要将通知从UI测试目标发布到MyApp目标.要从UI测试目标函数发布通知,我使用此:

NSNotificationCenter.defaultCenter().postNotificationName(name, object: nil, userInfo: aUserInfo)
Run Code Online (Sandbox Code Playgroud)

看起来这个通知永远不会从UI测试目标到达观察者,但是从MyApp目标发布此通知时它可以正常工作.

如何从UI Target发布通知到MyApp目标?

使用Xcode 7.

xcode ui-testing ios xcode-ui-testing

8
推荐指数
1
解决办法
783
查看次数

如何在iOS XCTest中测试UIImageView元素?

我正在尝试使用XCTest UI测试来测试我的UI,并且在我的应用程序中遇到了测试UIImageViews的麻烦(点击测试,存在等).

在XCUIElementType的列表中没有这样的类型,当我查看superview的子节点时,由于某些原因我的UIImageViews没有列在那里,尽管我可以在屏幕上和Xcode的UI检查器中看到它们.

有人有过这种问题吗?

objective-c uiimageview ios xctest xcode-ui-testing

8
推荐指数
1
解决办法
5809
查看次数

UI测试失败 - 应用程序状态是XCApplicationStateRunningActive而不是XCApplicationStateNotRunning

我正在使用XCUI测试来自动测试我们的应用程序中的一些流程(~35个测试场景)和Xcode 7.2.1

在本地运行这些测试将始终通过,而在我们的虚拟机实例(Parallels,Mac mini,OSX 10.11,8GB RAM)上运行它们将在此过程中的不同部分失败.

我会得到如下错误:

UI Testing Failure - App state for <XCUIApplicationProcess: 0x7ff661528a50 (null) (6798)> is XCApplicationStateRunningActive (3), still not XCApplicationStateNotRunning (1)[0m
Run Code Online (Sandbox Code Playgroud)

我已经关闭了应用程序中的动画,并在整个应用程序中放置了大量的等待时间,以尝试迎合慢速运行,但没有结束.

运行XCUITests和模拟器运行时是否有任何类似的问题?

任何帮助都会很棒.

ios ios-ui-automation xctest xcode-ui-testing

8
推荐指数
0
解决办法
1022
查看次数

XCUITest和今日小工具

我有一个应用程序与今日小工具.所以我想对它进行一些UI测试.

我找到了打开今日/通知面板的方法.看起来很简单:

let statusBar = XCUIApplication().statusBars.elementBoundByIndex(0)
statusBar.swipeDown()
Run Code Online (Sandbox Code Playgroud)

但后来我找不到办法做一些有用的事情.可以在"今日/通知"面板中记录UI交互,但此类代码无法重现我的操作.

ios ios8-today-widget today-extension xcode-ui-testing ios9-today-widget

8
推荐指数
2
解决办法
1231
查看次数

iOS UI测试失败,因为"应用程序未运行,无法获取辅助功能数据.您是否调用了-launch?"

如果这是一个重复的问题,我道歉.我找不到一个而且不知所措.我的测试无法通过,因为应用程序无法启动.我运行测试并观看模拟器,并使用正常的应用程序(用于单元测试),它将在测试运行后打开和关闭,但是我的"MyAppUITests"应用程序,它看起来已准备好打开并在启动时崩溃这就是为什么我收到Application is not running, unable to get Accessibility data. Did you call -launch消息.

UI测试运行时的控制台:

Test Case '-[FizzBuzzUITests.ViewControllerUITests 
    testTapNumberButtonIncrementsScore]' started.
    t =     0.00s     Start Test at 2017-04-10 10:44:25.544
    t =     0.00s     Set Up
    t =     0.01s     Tap "numberButton" Button
    t =     0.01s         Wait for app to idle
    t =     0.07s         Find the "numberButton" Button
    t =     0.08s             Wait for app to idle
    t =     1.13s             Find the "numberButton" Button (retry 1)
    t =     1.25s                 Wait for app to …
Run Code Online (Sandbox Code Playgroud)

xcode ios xcode-ui-testing swift3 xcode8

8
推荐指数
1
解决办法
1661
查看次数

iOS UI测试iMessage应用程序/扩展

我目前正在使用Fastlane Snapshot自动为我的应用程序截取屏幕截图.这一切都基于UI测试.

我正在尝试将相同的功能添加到iMessage App/Extension.

所以目前我有一个测试,通过点击按钮,填写文本字段,截取屏幕截图等.

完成所有这些后,我希望它关闭应用程序(单击主页按钮),打开iMessage,与我的iMessage应用程序交互并在那里截取一些屏幕截图.

这可能吗?如果是这样我怎么能实现这个目标?自动化这个应用程序的屏幕截图非常棒,我也希望能够为iMessage应用程序做到这一点.

screenshot ios swift xcode-ui-testing imessage-extension

8
推荐指数
1
解决办法
725
查看次数

iOS UITest:如何测试自定义辅助功能操作?

我想支持VoiceOver.我有一个UIButton内心UITableViewCell.根据最佳实践,我已禁用了accessibility(.isAccessibilityElement = false)按钮,并为cell(accessibilityCustomActions, NSAccessibilityCustomAction)实现了自定义辅助功能.

这样VoiceOver就不会找到并读取按钮作为自己的元素.为了使按钮后面的功能可访问,我已向单元格添加了自定义辅助功能操作.通过自定义操作,用户可以通过向上和向下滑动来选择操作.然后用双击执行它.

现在我想用UITest测试这个动作.无法访问UITest内的按钮,因为它已禁用可访问性.

如何在UITest内执行自定义辅助功能?

accessibility ios voiceover xcode-ui-testing xcuitest

8
推荐指数
1
解决办法
258
查看次数