如何在Xamarin中测试共享代码

时间:2015-04-05 15:41:34

标签: c# unit-testing xamarin

我有一个包含3个项目的Xamarin解决方案:

  • 的Android
  • 的iOS
  • 共享

Shared是一个包含所有共享逻辑的共享项目。例如。使用sqlite-net进行数据库访问,使用restsharp进行rest调用。

我想在共享中测试代码。

我创建了一个NUnit Library Project并在其中创建了一个测试。

现在项目无法编译,因为它无法找到共享项目所需的dll。

这些dll不是由Shared直接引用的。例如,Android项目引用了sqlitenet.dll的android版本。

如何测试共享代码?

1 个答案:

答案 0 :(得分:3)

共享项目只是链接文件的容器,或者另一种方式是共享项目不直接具有任何引用,但获取引用它的项目的任何引用。

如果您有一个引用共享项目的iOS和Android项目,要正确地对所有可能的代码路径进行单元测试,您需要Android和iOS版本的单元测试项目,这些项目引用共享项目并引用共享项目所需的任何内容,例如SqLite,并定义任何所需的编译常量。

如果iOS和Android单元测试之间的代码部分相同(很可能),您也可以使用共享项目来共享该代码。