标签: xcode-ui-testing

不能在Xcode 7 UI测试目标中包含Objective-C .framework吗?

我试图依靠OHHTTPStubs作为一个框架,来自Xcode 7中的Swift UI测试目标.

我构建了.framework(通过Carthage,但我不确定它是否相关?)并将其拖入UI测试目标的Build Phases选项卡下的"带库的链接二进制文件"部分.

但是当我尝试@import OHHTTPStubs在我的.swift测试用例中时,Xcode告诉我No such module 'OHHTTPStubs'.

这应该很简单,我错过了什么?这是Github上的项目.

ios ios-frameworks carthage xcode7 xcode-ui-testing

6
推荐指数
0
解决办法
955
查看次数

Xcode 7中的UITests找到错误的"下一步"按钮

我有一个如下所示的测试:

func testNextButtonDisabled() {
  let app = XCUIApplication()
  XCTAssertFalse(app.buttons["Next"].enabled)
}
Run Code Online (Sandbox Code Playgroud)

此测试失败,因为除了我自己创建的"下一步"按钮外,键盘返回按钮标有"下一步".此测试失败并显示错误:

UI测试失败 - 找到多个匹配项

如何区分我自己的"下一步"按钮和键盘"下一步"按钮?

xcode ui-testing xctest xcode-ui-testing

6
推荐指数
1
解决办法
2838
查看次数

如果在XCTest UI Test中给出索引,我怎样才能验证表视图行中是否存在文本?

我正在使用XCTest UI Test框架来检查表视图中的行.在我的测试中,我需要在给定索引的表视图行中验证文本是否存在.

我正在考虑使用tableRows.elementBoundByIndex方法,但它没有返回任何东西.调用返回的行数tableRows.count为零.该表存在并填充,因为我可以成功查询行内的文本:

XCTAssertEqual(app.tables.staticTexts["Cute Alpaca"].exists)
Run Code Online (Sandbox Code Playgroud)

如何根据XCTest UI测试中的索引验证连续文本的存在?

xcode xctest swift xcode-ui-testing

6
推荐指数
1
解决办法
7964
查看次数

Xcode Ui-automation - 测试未在物理设备上运行

如果我想在物理设备上运行测试,是否有任何特定配置?

-my物理设备正在运行ios 9.0

- 我有一个配置的配置文件(应用程序在设备上运行)

- 我已启用UI自动化(设置 - >开发人员)

- 我的主动方案是我的目标,我选择了物理设备

但是当我运行测试(UI测试)时,会有一条消息"测试成功"(设备上没有任何反应,应用程序根本没有打开,根本没有错误消息),当我去了报告导航器,没有与测试相关的信息,我刚刚运行.

如果我在模拟器上运行此测试,它将运行没有问题.似乎xcode没有运行测试,但它显示"测试成功"消息谢谢!

xcode ios xctest xcode-ui-testing

6
推荐指数
2
解决办法
2263
查看次数

Xcode 7 UI测试订单

我有几个UI测试,我可以成功单独或分组.我最终将我的测试分解为特定的类并以这种方式运行它们.我遇到的问题是Xcode按字母顺序执行UI测试,而不是按顺序编写/显示.有关如何绕过它的任何想法?

谢谢

ios xcode7 xcode-ui-testing

6
推荐指数
2
解决办法
2597
查看次数

Xcode UITesting - 如何移动UISlider?

是否有移动的方式UISlider下,UITests目标在Xcode?我真的需要从代码中移动它.可能吗?

ios swift xcode-ui-testing

6
推荐指数
1
解决办法
2235
查看次数

Xcode UI测试-使用存储的凭据登录/注销

我想在我的iOS应用(Xcode 7.2.1)中为登录过程运行功能(UI)测试。

该应用程序的行为是,成功登录后,将存储用户凭据,以便在下次启动时自动登录(不显示登录屏幕)。

因此,我在登录屏幕上设置了一系列UI事件,以使该应用首次在iOS模拟器中启动时通过登录测试。但是,下一次我运行测试将失败,因为登录屏幕甚至没有按预期显示。

我在这里看到两个选项,但似乎都不适合:

  1. 每次运行测试之前,请使用脚本重置iOS Simulator的内容和设置。我尝试Run ScriptBuild Phases带有:的测试目标中添加一个阶段xcrun simctl shutdown booted && xcrun simctl erase all && killall "Simulator",但这似乎不起作用(Simulator应用程序无法启动,并且测试卡住了)。
  2. 包含在-(void)tearDown一些代码中以清除存储的用户凭据。此选项不好,因为它不仅在每个测试方法之间运行(不是在每次测试启动时都运行),而且似乎我无权访问AuthManager用于清除用户凭据的类。

当用户界面测试登录过程时,您会怎么做?

xcode objective-c ios ios-simulator xcode-ui-testing

6
推荐指数
1
解决办法
1907
查看次数

为什么XCTest UI测试有时会失败并显示错误"在原始调度的[n秒]内未能接收到事件传递确认"

XCTest UI对Mac应用程序进行了相当正常的测试,该应用程序单击应用程序菜单中的某些菜单项以打开窗口.

在某些地方 - 比如我自己的Mac - 测试工作正常.但在其他地方 - 比如Travis CI- 他们失败了,出现了这个错误:

UI Testing Failure - Failed to receive event delivery confirmation within 2.5s of the original dispatch.
...
menuBarsQuery.menuBarItems["Top level menu item"].click()
menuBarsQuery.menuItems["Menu item in sub menu"].click()
Run Code Online (Sandbox Code Playgroud)

系统:

  • Mac OS 10.11.5
  • Xcode 7.2.1
  • Mac OS SDK版本:10.11.2
  • Swift 2.1.1

稍微消毒的测试用例版本:

import XCTest

class FooUITests: XCTestCase {

    override func setUp() {
        super.setUp()
        continueAfterFailure = false
        XCUIApplication().launch()
    }

    override func tearDown() {
        super.tearDown()
    }

    func testCanDoSomething() {
        let app …
Run Code Online (Sandbox Code Playgroud)

cocoa xctest swift xcode-ui-testing

6
推荐指数
0
解决办法
311
查看次数

在XCode中禁用UITests

我的UITests在XCode的测试窗格中突然变得灰暗.(见下图.)因此,当我选择产品 - >测试时,它们不会运行.只有单元测试运行(不显示灰色).

尽管它们是灰色的,但我可以按住UITests中的每个行项目并成功运行它.

知道什么配置导致这个灰显了吗?我该怎么扭转呢?

在此输入图像描述

xcode ios xcode-ui-testing uitest

6
推荐指数
1
解决办法
1194
查看次数

Xcode UI测试:在谓词失败时自动拍摄快照?

每当测试失败时,Xcode UI Testing都会在结果导航器中自动截取屏幕,这非常有用.但是,这不包括由于谓词失败而失败的测试.由于谓词通常用于基本检查(例如,当前视图中是否存在元素),这是一个巨大的缺点,因为屏幕截图可用于诊断测试失败时应用程序中发生的情况.

有谁知道如何强制截图?这是否需要集成Fastlane快照工具?

xcode xctest xcode-ui-testing

6
推荐指数
3
解决办法
2530
查看次数