我有一个包含3个项目的Xamarin解决方案:
Shared是一个包含所有共享逻辑的共享项目。例如。使用sqlite-net进行数据库访问,使用restsharp进行rest调用。
我想在共享中测试代码。
我创建了一个NUnit Library Project并在其中创建了一个测试。
现在项目无法编译,因为它无法找到共享项目所需的dll。
这些dll不是由Shared直接引用的。例如,Android项目引用了sqlitenet.dll的android版本。
如何测试共享代码?
答案 0 :(得分:3)
共享项目只是链接文件的容器,或者另一种方式是共享项目不直接具有任何引用,但获取引用它的项目的任何引用。
如果您有一个引用共享项目的iOS和Android项目,要正确地对所有可能的代码路径进行单元测试,您需要Android和iOS版本的单元测试项目,这些项目引用共享项目并引用共享项目所需的任何内容,例如SqLite,并定义任何所需的编译常量。
如果iOS和Android单元测试之间的代码部分相同(很可能),您也可以使用共享项目来共享该代码。