我将测试收集在.NetStandard项目(程序集)中(因为我需要通过非常不同的平台进行测试)。 我们不能直接运行它们,因为它要求项目定位诸如.NetFramework或.Net Core之类的东西。
因此,我创建了.Net Core项目并引用了.NetStandard项目。
但是,当运行dotnet test ...csproj
时,我显然会收到
...中没有可用的测试。请确保测试发现者& 执行者已注册,平台和框架版本设置已注册 适当,然后重试。
...因为显然没有魔术和测试适配器无法读懂我的想法并自动进入任何引用的程序集。
但是,必须有某种提及方式,对吗?
The documentation对此相当谦虚,因此我什至不知道这种方法是否普遍可行。
但是,在使用TestRunners测试Xamarin.iOS / Android时,他们总是可以选择添加我的程序集进行测试,例如:runner.Add(typeof(MyTestClass).Assembly)
。
更新:需要明确指出的是,这个问题点实际上不是关于针对不同平台的问题,而是找到了运行方式.Net Core项目进行的测试(已经已用于Xamarin的方式)
有什么办法能让我幸运吗?