Xcode Test没有检测到我的课程

时间:2015-07-10 07:59:54

标签: ios iphone xcode swift xcode7

我的项目中有一个名为Meal.swift的类和一个单元测试

func testMealInitialization() {
    // Success case.
    let potentialItem = Meal(name: "Newest meal", photo: nil, rating: 5)
    XCTAssertNotNil(potentialItem)

    // Failure cases.
    let noName = Meal(name: "", photo: nil, rating: 0)
    XCTAssertNil(noName, "Empty name is invalid")

}

但问题是:使用未解析的标识符"用餐"

6 个答案:

答案 0 :(得分:17)

@testable import MyApp应该可以正常工作。只需记住在Debug目标的UITest内设置适当的配置。

enter image description here

答案 1 :(得分:15)

Xcode 7添加了@testable import语句以简化用户测试。在单元测试类文件的顶部,添加以下语句:

@testable import MyApp

MyApp 是您的iOS应用的名称。现在单元测试目标应该能够在您的应用程序中找到类并运行测试。如果您收到链接错误,指出Xcode无法找到您的应用类,请确保产品模块名称构建设置的值与您在@testable import语句中使用的名称相匹配,在此示例中 MyApp 。 / p>

如果@testable import不适合您,则解决方法是让您的应用类成为单元测试目标的成员。您可以使用文件检查器在Xcode中设置文件的目标成员资格。

答案 2 :(得分:7)

我也遇到过这个问题,对我有用的是重新加载我的测试文件并重新输入

@testable import FoodTracker

然后在那时,它检测到我的FoodTracker类(用餐类)并且错误消失了。

答案 3 :(得分:6)

点击您的膳食课程。然后在右侧,您将看到“目标会员”部分。选择您的测试项目。 (Xcode 7) 瞧。

答案 4 :(得分:0)

就我而言,我仅在刚完成的新课程中出现错误,这让我感到困惑。因此,它可以通过在我的新班级的班级成员身份下选择单元测试目标来工作。或删除课程,再次创建新课程,然后在该新课程中选择 Unit Test Target

答案 5 :(得分:-1)

只需将要测试的类添加到目标-> 构建 阶段-> 编译源