我正在使用MonoTouch(monoDevelop 2.6)开发iPhone应用程序。我创建了一个基于iPhone windows的项目,一个monoTouch库项目和一个NUnit项目。我想从我的NUnit项目中添加一个引用到我的库项目中,这样我就可以针对我的UI不可知代码编写一些单元测试。
遗憾的是,库和UI项目使用runTimeMonoForiPhone,不能添加为NUnit项目(使用Mono/3.5目标框架)的引用。。这些项目在编辑参考文献下显示为灰色,并显示消息"不兼容的框架…"
同样,如果我为我的业务逻辑创建一个常规的.net库,UI就不能引用该项目。
如何针对我的iPhone应用程序创建单元?
-
添加一个包含非UI代码的单点库项目。
-
添加一个UnUnit项目。
-
将文件添加到nUnit项目(通过创建链接)。
现在,我可以运行至少一个测试了。
我建议创建两个项目,一个以MonoTouch为目标,另一个以.NET 3.5/4/为目标,用于NUnit测试。
如果您错过了它,现在有一个NUnitLite运行程序可用于MonoTouch,它被设计用于UI无关代码,并在设备(或模拟器)上执行。
请参阅:iOS 的.NET单元测试运行程序