相关疑难解决方法(0)

Xcode Test没有检测到我的课程

我的项目中有一个名为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")

}
Run Code Online (Sandbox Code Playgroud)

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

iphone xcode ios swift xcode7

21
推荐指数
4
解决办法
1万
查看次数

Xcode UI测试示例

我刚刚学习了Xcode中的单元测试.现在我正在尝试Xcode 7,当我创建一个新项目时,我看到有一个新的UI测试组.

在此输入图像描述

我观看了WWDC 2015视频并且它非常好,但你有一个超级简单的例子,我可以自己完成吗?视频示例对我来说有点过于复杂.

笔记

xcode ui-testing ios xcode-ui-testing

18
推荐指数
2
解决办法
2万
查看次数

在UnitTest-Swift中找不到模块"MyApp"

我试图在我的遗留Objc代码中测试一些Swift类(@objc类).我在我的测试类中导入"UnitTests-Swift.h".

然后我收到这个错误:

在自动生成的"UnitTests-Swift.h"中找不到模块"MyApp"

这是"UnitTests-Swift.h"顶部的内容

typedef int swift_int3  __attribute__((__ext_vector_type__(3)));
typedef int swift_int4  __attribute__((__ext_vector_type__(4)));
#if defined(__has_feature) && __has_feature(modules)
@import XCTest;
@import ObjectiveC;
@import MyApp;
@import CoreData;
#endif
Run Code Online (Sandbox Code Playgroud)

我清理了项目,检查了所有相关的标志(在Xcode单元测试中使用@testable时没有这样的模块,不能在Objective-C中使用Swift类),删除派生数据等等.不知道发生了什么,但我很确定@import MyApp不应该在那里..

谁能帮我这个?

xcode ios xcode7 swift2 swift3

16
推荐指数
2
解决办法
1531
查看次数

如何将我的App模块导入MyAppUITests文件?

这是我的简单测试用例:

import XCTest
@testable import MyApp //it doesn't work
Run Code Online (Sandbox Code Playgroud)

因为这:

在此输入图像描述

class TabBarControllerTests: XCTestCase {

    override func setUp() {
        super.setUp()

        let defaults = NSUserDefaults.standardUserDefaults()
        defaults.setObject([], forKey: DBTabBarOrderedIndexesKey) //key is undefined, because of lack of my app module
        defaults.synchronize()

        continueAfterFailure = false
        XCUIApplication().launch()
    }

    func testIsOrderOfTabsSaved() {

        XCUIApplication().tabBars.buttons["Catering"].tap()
        //what next?
    }
}
Run Code Online (Sandbox Code Playgroud)

一旦我点击UITabBarItem我改变了值DBAppSettings.mode,所以在这里我想访问我的DBAppSettings.mode属性来检查它是否真的改变了.

我注意到有一个奇怪的事情,当我构建我的应用程序,并检查构建的内容时,我的UITest目标没有构建.那很重要么?

在此输入图像描述

import xcode ios swift xcode-ui-testing

15
推荐指数
1
解决办法
1680
查看次数

Xcode单元测试

我从来没有使用过单元测试,我理解它的用途,但我真的不知道何时以及如何使用它.

我想知道什么时候使用单元测试是值得的,也许有一些例子.

iphone unit-testing objective-c ios

13
推荐指数
2
解决办法
9643
查看次数

iOS - 自定义配置 - "没有这样的模块"

在我的iOS应用程序,我想区分的环境,使网络API调用适当的环境(Development,StagingProduction).

为此我创建了一个configuration.plist文件,其中包含每个环境的不同端点,并且:

  • 复制Debug配置并调用它Development Build.
  • 创建了一个名为Development(复制Debug方案)的新Scheme,并在Info选项卡(Runsection)中选择了Development Build 配置.

当我在调试模式下运行时,一切正常运行.

我正在使用可可豆荚.

如果我选择Development方案,我会得到一个No such module 'JazzHands'

如果我编辑该Development方案以使用该Debug构建,它工作正常.

所以我一定要错过一些不能工作的东西.

xcode ios xcode6

12
推荐指数
2
解决办法
2964
查看次数

XCode 单元测试中没有这样的模块 <产品模块名称>

我有一个混合的 Objective-c 和 Swift 项目,我尝试为它编写单元测试。我的项目名称是:Alphaproject 我的产品模块名称是:Alphaproject 我在我的主要目标(Alphaproject)中设置为 YES 定义模块,并设置为 YES EnableTestability for Debug only in this same Target。

在我的 Test 类中,我尝试导入我的产品模块名称:

@testable 导入 Alphaproject

补充说明:

  • 我所有的项目文件只是主要目标的一部分
  • 我的测试文件只是测试目标的一部分
  • 我的测试方案设置为构建调试配置。
  • 我还尝试清理 Build 文件夹(ALT + Clean)
  • 该项目在编译或尝试运行测试时没有任何错误,除了这个“没有这样的模块 Alphaproject”

还有其他想法吗?

xcode unit-testing compilation objective-c swift

3
推荐指数
1
解决办法
3054
查看次数