标签: xcode-ui-testing

UI测试中不完整的通用字符名称

我正在使用Xcode 7的新功能:UI测试.记录交互后,Xcode自动生成代码:

- (void)testDoubleTapToolBarItem {
    [[[XCUIApplication alloc] init].tabBars.buttons[@"\U5173\U6ce8"] doubleTap];
                                                    ~~~~~~~~~~~~~~~~
}
Run Code Online (Sandbox Code Playgroud)

但是,警告也显示出来了.有人知道怎么修这个东西吗?

不完整的通用字符名称


编辑:这似乎是自Xcode 7.0 GM以来的一个BUG

xcode objective-c ui-testing ios9 xcode-ui-testing

13
推荐指数
1
解决办法
2595
查看次数

有没有办法找到XCUIElement是否有焦点?

我的一个屏幕有多个文本字段,我可以从不同的其他屏幕登陆到这个屏幕.在每种情况下,我将一个或另一个文本字段作为第一响应者.我无法编写测试来确定所需的textField是否具有焦点.

当我在控制台中打印文本字段时 -

输出:{TextField 0x131171d40:traits:146031247360,Focused,{{ 6.0,108.3 },{402.0,35.0}},value:}

但我在XCUIElement上找不到任何focus/isFocus属性.

有没有办法实现这个目标?

ui-testing ios xcode7 xcode-ui-testing

13
推荐指数
2
解决办法
4992
查看次数

通过Cocoapods包含Xcode 7 UI测试依赖性?

我有一个现有的Objective-C项目,我想添加一个新的Xcode 7 UI测试目标,OHHTTPStubs作为依赖项.

我在Xcode中添加了新的(Swift 2.0)UI测试目标,然后将其添加到我的Podfile:

target 'FooUITests' do
    pod 'OHHTTPStubs', '4.0.1'
end
Run Code Online (Sandbox Code Playgroud)

我跑pod update,清理,重建.但是当我尝试import OHHTTPStubs在模板UI测试的顶部测试.swift文件Xcode为我创建时,它抱怨"没有这样的模块'OHHTTPStubs'".

我正在使用Cocoapods版本0.37.2-将Objective-C依赖项导入到Swift(... UI测试)目标中,甚至可以工作吗?

更新:正如我在下面的自我回答中所述,添加use_frameworks!到我的Podfile让我得到了清晰的编译 - 我可以import OHHTTPStubs在我的测试文件的顶部,引用类和方法,代码完成工作 - 但是当我真正去运行测试时我得到Xcode控制台中的以下输出:

2015-06-18 10:06:57.134 XCTRunner[51557:609693] The bundle “FooUITests” couldn’t be loaded because it is damaged or missing necessary resources. Try reinstalling the bundle.
2015-06-18 10:06:57.135 XCTRunner[51557:609693] (dlopen_preflight(/Users/foo/Library/Developer/CoreSimulator/Devices/38181A1B-67B1-4D7F-B434-85361533F985/data/Containers/Bundle/Application/83C68748-55A3-4A02-8862-C18ADEF895B5/FooUITests-Runner.app/PlugIns/FooUITests.xctest/FooUITests): Library not loaded: @rpath/OHHTTPStubs.framework/OHHTTPStubs
  Referenced from: /Users/foo/Library/Developer/CoreSimulator/Devices/38181A1B-67B1-4D7F-B434-85361533F985/data/Containers/Bundle/Application/83C68748-55A3-4A02-8862-C18ADEF895B5/FooUITests-Runner.app/PlugIns/FooUITests.xctest/FooUITests
  Reason: image not found)
Run Code Online (Sandbox Code Playgroud)

虽然我的目录下似乎有Release-iphoneosRelease-iphonesimulator构建.OHHTTPStubs.framework …

ios cocoapods swift xcode7 xcode-ui-testing

12
推荐指数
1
解决办法
2577
查看次数

Xcode 7:app测试和UI测试之间的鸿沟是不可架断的?

Xcode 7†有一种直接测试UI的新方法,包括新的测试目标"iOS UI Testing Bundle"(或"OS X").

在此输入图像描述

在UI测试目标中,似乎没有对构成您的App的模型或类的内置访问.例如[UIApplication sharedApplication],您的UI测试无法调用.这意味着"应用程序测试"和"UI测试"存在于可能不可逾越的鸿沟中.

如前所述这里:

问题是Xcode的UI测试不允许访问实际的应用程序.

问题:

  1. 这个鸿沟可以弥合吗?如果是这样,详细说明如何使用构建和链接器设置以及可能xcodeproj在github上工作.
  2. 在Apple文档中,可以找到明确说明这种鸿沟的地方.

†在撰写本文时,测试版软件.

xcode automated-tests ui-testing xcode7 xcode-ui-testing

12
推荐指数
1
解决办法
957
查看次数

Xcode 7 UI调试录制.不可测试的可构建

单击记录按钮时,Xcode会提示"No buildable for testable".

在针对iOS的Xcode项目中,有一个Objective-C测试目标和一个Swift测试目标,两者都用于UI测试.在Apple UITestingGuidelines的指导下,我将插入点移动到testExample函数并单击了记录按钮.释放按钮后,会立即显示一条弹出警告,其中显示"No buildable for testable".我已经尝试过多次重启项目但是没有用.

testing xcode cocoa record xcode-ui-testing

12
推荐指数
2
解决办法
2005
查看次数

在UI测试中自动化SFSafariViewController的任何方法?

有没有办法自动化SFSafariViewController?我喜欢Xcode 7 UI测试功能,但它似乎不支持SFSafariViewController自动化.我正在测试的一些UI流程需要一个Web浏览器,因此应用程序使用SFSafariViewController使其比Web视图更安全.

mobile-safari coded-ui-tests ios xctest xcode-ui-testing

12
推荐指数
1
解决办法
1027
查看次数

以编程方式将应用程序发送到后台

有没有办法将应用程序发送到后台?与您可以调用的方式类似XCUIApplication.terminate(),我有一些要测试的UI元素applicationDidBecomeActive(_:).有谁知道这是否可能?

ios swift xcode-ui-testing

12
推荐指数
4
解决办法
6068
查看次数

Swift UI测试TextField中的访问字符串

我正在使用集成在Xcode和XCTest中的UI Test Case类来测试应用程序UI.我想测试这样的东西:

    app = XCUIApplication()
    let textField = app.textFields["Apple"]
    textField.typeText("text_user_typed_in")
    XCTAssertEqual(textField.text, "text_user_typed_in")
Run Code Online (Sandbox Code Playgroud)

我已经尝试过textField.value了!字符串方法; 这是行不通的.我也尝试过使用新的异步方法和expectationForPredicate(),它会导致超时.

知道怎么做吗?或者UI测试无法验证这种类型,我只能编写黑盒测试?

ios swift xcode-ui-testing

12
推荐指数
1
解决办法
2万
查看次数

使用AVPlayer进行UI测试

我正在寻找一种方法来测试使用AVPlayer的应用程序.

如何加载视频文件?我试图记录操作,但在调用NSOpenPanel.runModal()时记录停止.

任何的想法?

cocoa avplayer xcode-ui-testing

12
推荐指数
0
解决办法
209
查看次数

如何在xcode ui test中使用swift代码旋转模拟器

我有一个场景,我必须旋转我的模拟器,而xcode ui测试正在进行.

要旋转模拟器,我使用以下代码

UIDevice.currentDevice().orientation
let value = UIInterfaceOrientation.LandscapeLeft.rawValue
UIDevice.currentDevice().setValue(value, forKey: "orientation")
Run Code Online (Sandbox Code Playgroud)

但它不起作用.

有没有解决方案在xcode ui测试中使用swift代码旋转模拟器?

谢谢

xcode ios xctest swift xcode-ui-testing

12
推荐指数
1
解决办法
1767
查看次数