我试图在swift中构建我的第一个非教程应用程序,并在测试中使用trobule。
我创建了一个User:NSObject
//
// User.swift
import UIKit
public class User: NSObject {
var name: String
var image: UIImage?
init(name: String, image: UIImage?) {
self.name = name
self.image = image
}
}
根据Apple Swift testing Documentation
进行测试//
// LocalTalkTests.swift
import UIKit
import XCTest
class LocalTalkTests: XCTestCase {
// https://developer.apple.com/library/prerelease/ios/referencelibrary/GettingStarted/DevelopiOSAppsSwift/Lesson6.html#//apple_ref/doc/uid/TP40015214-CH20-SW1
func testUserInitialization() {
let potentialUser = User(name: "Newest meal", image:nil)
XCTAssertNotNil(potentialUser, "User can't be nil" )
}
}
我不明白在测试中如何知道User对象。我在之前的项目中使用过Objective-C,只使用了#import "file.h
关键字。
如何确保我可以在测试中使用此对象,或者至少使其面向公众?
*我正在使用Swift 1.2和Xcode 6
答案 0 :(得分:2)
原来我需要做的就是将我的项目添加到我的测试目标中。
我发现这2篇博文发表了关于这个的很好的解释
http://natashatherobot.com/swift-unit-testing-tips-and-tricks/ http://www.andrewcbancroft.com/2014/07/22/swift-access-control-implications-for-unit-testing/
以及此question