在Swift中单元测试我的ViewController时,使用未声明的“ViewController”?

前端之家收集整理的这篇文章主要介绍了在Swift中单元测试我的ViewController时,使用未声明的“ViewController”?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直在尝试在Swift中编写测试用例来测试我的ViewController。但是,当我尝试在XCTestCase中实例化自己的ViewController时,我得到“使用未声明的类型”ViewController’“。 (ViewController是我自己的UIViewController类的名字)

之前有谁面对这个问题吗?我正在使用Xcode 6 beta 5

斯威夫特1

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

要么

如果您是ViewController是在一个框架内:ViewController类是在不同的目标,你没有声明具有公共访问级别的类。默认情况下,Classes是内部的(可在目标中访问)。将其声明为公开的,并且如果要访问它也将方法属性设置为public

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

您现在可以访问测试目标中的公共和内部符号。

swift 2 Xcode 7 unit testing

猜你在找的Swift相关文章