在Swift中对我自己的ViewController进行单元测试时,使用未声明的类型'ViewController'吗?

霍米

我一直试图在Swift中编写测试用例来测试我的ViewController。但是,当我尝试在XCTestCase中实例化自己的ViewController时,出现“使用未声明的类型'ViewController'”(ViewController是我自己的UIViewController类的名称)

在此处输入图片说明

有人遇到过这个问题吗?我正在使用Xcode 6 beta 5

Yatheesha BL

斯威夫特1

如果不使用框架,也应该添加ViewController.swift文件的目标成员身份作为测试目标。选择类文件添加到目标,如图所示:

在此处输入图片说明

要么

如果您是ViewController,则在框架内:ViewController类位于不同的目标中,并且您未在公共访问级别声明类。默认情况下,类是内部类(可在目标中访问)。如果要访问它,则将其声明为公共,并使方法或属性也为公共,即

public class ViewController: UIViewController {

    public var content: String!

    override public func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    }

    override public func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

}

Swift 2更新

在测试目标中,只需使用@testable关键字导入要测试的模块

@testable import moduleToTest

现在public您可以internal在测试目标中访问符号。

快速的2 Xcode 7单元测试

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

ViewController中的Swift错误“使用未声明的类型”

我可以在TabBarController中多次使用同一ViewController吗?

ViewController的包装器应该是ViewController吗?

'ViewController'不能转换为'CocoaMQTTDelegate'吗?

将XIB载入ViewController Xamarin吗?

Swift 3,Cant在viewcontroller中创建多个函数吗?

我有问题要从导航堆栈中删除ViewController吗?

Swift4单元测试:类型转换时找不到ViewController

在viewController之间进行转换时,使用静态变量存储变量的良好做法吗?

Sencha现代应用程序ViewController不绑定被调用吗?

iOS容器视图与父级ViewController通信吗?

ViewController没有初始化程序吗?

将ViewController与Swift中的类型进行比较

Ionic 2 ViewController单元测试

“ViewController”类型的值没有成员“ref”;您指的是 'self' 吗?使用 firebase 快速出错

iOS / Swift / Spritekit我在该ViewController中显示新场景后,场景会删除数据吗?

在Xcode中初始化新项目时没有main.storyboard或ViewController.swift吗?

Swift:ViewController中的TableView

我可以手动触发viewController上的所有支持supportInterfaceOrientations的调用吗?

更改背景颜色BEHIND ViewController框架(更改frame.origin时)吗?

当返回父viewController时,Manuel segue'Show'不调用ViedDidload吗?

iOS:在对新的viewController执行搜索时添加非页内广告吗?

在准备转场方法中初始化 ViewController 是一个好习惯吗?

从当前 ViewController 或父 ViewController 进行网络调用?

我可以将MCBrowserViewControllerDelegate与GameViewController类一起使用,而不要与ViewController类一起使用吗?

使用依赖注入,我发现自己创建了工厂来进行单元测试。这正常吗?

iOS为什么单元测试类调用ViewController

在使用Swift关闭ViewController的过程中,如何将值从ViewController B传递给ViewController A?

如何从使用的 viewController 弹回 root ViewController?