作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在为我的 Xamarin.Forms 应用程序运行单元测试,单元测试抛出 Xamarin.Essentials.NotImplementedInReferenceAssemblyException
:
我为应用程序创建了一个单元测试项目(使用 NUnit 3.12.0)并编写了以下代码来测试功能。
[TestFixture()]
public class Test
{
[Test()]
public void TestCase()
{
AutoResetEvent autoEvent = new AutoResetEvent(true);
SomeClass someClass = new SomeClass();
someClass.SomeFunction((response) =>
{
Assert.AreEqual(response, "Hello")
autoEvent.Set();
});
autoEvent.WaitOne(); //** Xamarin.Essentials.NotImplementedInReferenceAssemblyException thrown here**
}
}
下面是来自 Xamarin.Forms 应用程序的测试代码:
public class SomeClass
{
public void SomeFunction(Action<string> callback)
{
// asynchronous code...
callback("Hello");
}
}
上述功能在 Xamarin.Forms 应用程序中运行良好。
最佳答案
您需要添加 Xamarin.Essentials NuGet Package到您的单元测试项目。
我强烈推荐使用依赖注入(inject) + Xamarin.Essentials.Interfaces ,因为某些 Xamarin.Essentials API 未在 .NET Core 上实现,您需要创建自己的实现。
例如,这里有一些 Xamarin.Essentials APIs I implemented in .NET Core用于单元测试我的GitTrends应用程序:
关于c# - 单元测试 Xamarin.Forms 应用程序时引发 Xamarin.Essentials.NotImplementedInReferenceAssemblyException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64423004/
我正在为我的 Xamarin.Forms 应用程序运行单元测试,单元测试抛出 Xamarin.Essentials.NotImplementedInReferenceAssemblyException
我是一名优秀的程序员,十分优秀!