如何创建以下结构:
CoreDataTests : XCTestCase
Entity1CoreDataTests : CoreDataTests
Entity2CoreDataTests : CoreDataTests
说明:我想编写一些与核心数据(check)相关的测试,但是我想把它们分成不同的测试用例类,所以在一个测试用例类中我会有与{{1}相关的测试实体,在另一个实体中,与User
实体相关的测试。这里的问题是,我希望两个测试用例类共享CoreDataTests中实现的Comment
和setUp
方法,只需使用tearDown
调用它们,而不必复制 - 粘贴它。
但由于super
是一个测试用例类,它没有头文件,因此CoreDataTests
类抱怨他们没有指定基类。< / p>
答案 0 :(得分:8)
您可以像使用普通类一样创建XCTestCase的子类,使用.h和.m文件。
所以只是文件菜单&gt;新文件&gt;使用XCTestCase作为超类的新Cocoa类。
然后,您可以使用它作为超类创建新测试,但是,您仍然需要导入超类.h文件,因为它不会自动添加。
我出于同样的原因这样做,测试核心数据并使用常用方法来设置上下文。
但有一件令人讨厌的事情,它仍然出现在测试GUI中,只是没有测试。