首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Xcode UI测试示例

Xcode UI测试示例
EN

Stack Overflow用户
提问于 2015-07-24 09:33:50
回答 2查看 18K关注 0票数 20

我最近才了解到Unit Testing in Xcode。现在我正在试用Xcode7,当我创建一个新项目时,我看到有一个新的UI Tests组。

我看了WWDC 2015 video,它很不错,但是你有一个超级简单的例子可以让我自己体验一下吗?视频示例对我来说有点太复杂了。

笔记

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-07-24 09:33:50

使用单元测试来测试类中方法的有效性。您可以使用它们来测试您编写的代码。(有关在Xcode中设置简单单元测试的信息,请参阅my other example。)

使用UI测试检查用户界面的有效性。可以把它想象成拥有自己的机器人,可以像普通用户一样与你的应用程序进行所有正常的交互。这就节省了你自己动手的时间。

在撰写本文时,很难访问UI组件的许多属性,但只需通过点击和滑动它们来进行测试,就可以确认它们在那里。

示例

这是我能想到的最简单的设置和UI测试:一个按钮,当按下这个按钮时,它会改变标签的文本。

设置

  • 在Xcode 7+中为iOS 9.0+创建一个新项目。
  • 确保在

中选中包括UI测试

  • 如果要向使用Xcode7之前创建的项目添加UI测试,请参见this answer。(文件>新建>目标>测试>可可触摸UI测试捆绑包)
  • 向情节提要

添加UILabelUIButton

  • ViewController中创建@IBOutlet和@IBAction,并在按下button时更改label文本。

导入UIKit类标签: UIViewController { @IBOutlet弱var ViewController: UILabel!@IBAction函数按钮(发送者: AnyObject) { label.text = "Hello“} }

做测试

  • 打开_YourProject_UITests文件。

  • 将您的curser放在testExample()方法中。(您可以删除评论)

  • 按红色记录按钮

  • 在应用程序中,(1)点击标签,(2)点击按钮,然后(3)再次点击标签。(4)再次按下录制按钮停止录制。应该已经为您自动生成了以下代码:

func testExample() { let app = XCUIApplication() app.staticTexts"Label".tap() app.buttons"Button".tap() app.staticTexts"Hello".tap() }

  • 使用staticText行作为创建XCTAssert的起点。现在你应该已经拥有了:

func testExample() { let app = XCUIApplication() XCTAssert(app.staticTexts"Label".exists) app.buttons"Button".tap() XCTAssert(app.staticTexts"Hello".exists) }

  • 按下左边的菱形按钮运行UI测试。通过时应变为绿色。

  • 就是这样!这表明UIButtonUILabel存在,并且标签的文本已更改。如果你想看到它失败(这是个好主意),你可以把"Hello“改成其他东西。

进一步研究

  • UI Testing in Xcode
  • Exploring the New UI Testing Features of Xcode 7
  • Xcode 7 UI testing, a first look
  • UI Testing in Xcode 7
票数 49
EN

Stack Overflow用户

发布于 2015-11-16 18:00:03

答案是@Suragch +1。我观察到并想分享的一件事是,UI测试用例中的每个函数都必须以" Test“开头。你可以在后面加上额外的名字。只有这样,按钮(用于单击以启动测试)才会出现。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31600777

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档