2015-10-21 21 views
3

我正在尝试编写单元测试类来测试我的自定义类。当我尝试调用自定义对象作为输入变量的自定义类中的方法时,我得到: '无法将类型“Person”的值转换为期望的参数类型“Person”。 “Person”是继承自NSManagedObject的类,其中输入对象是从中创建的。我没有其他方法采取其他值类型的问题。该方法工作正常。测试班是唯一抱怨的人。这是一个错误还是限制?任何建议我可以深入探讨这个问题?swift Xcode单元测试:无法将类型“Person”的值转换为预期参数类型“Person”

+1

可能是命名空间问题。在您的核心数据模型中,当您选择Person实体时,您是否具有在Identity inspector中指定的模块名称?这可能是 .Person。如果是这样,请尝试删除它并保留空白。 –

+0

谢谢。我终于明白了。在测试类中,对象没有正常创建。我被错误信息误导了。 –

回答

2

我之前遇到过这个问题。事实证明,被测试的系统(在我的情况下,它是一个调用对象的服务;可能是您的示例为一个PersonService)没有测试项目的目标成员资格。我只是单击.swift文件,并确保主项目和测试项目都被检查。

希望这有助于!

+0

谢谢。我也会检查一下。 –

+0

它为我工作。 – rghome

+1

就我而言,问题在于所讨论的对象在框架和服务中都有目标成员。但是,它只需要框架中的目标成员资格,因为服务导入了框架。 – Andrew

相关问题