AntBlazor单元测试bUnit不工作



我对Blazor、AntBlazor和bUnit相当陌生。

当我的测试执行时,我得到以下错误:

对象引用未设置为对象的实例。在AntDesign.Aler.OnAfterRenderAsync(布尔firstRender(

我试图测试的组件正在使用AntBlazor Alert组件。

<Alert Type="@AlertType.Error" Message="Error text" Closable class="mb-3" />

当它需要显示时,它会抛出异常,但当它不需要显示时则测试通过。

我确实用TestContext 注册了AntDesign服务

TestContext.Services.AddAntDesign();

如有任何建议,我们将不胜感激。

我自己不是AntBlazor的专家或用户,所以这只是我在浏览他们的代码时发现的。

注册服务似乎还不够。您看到错误是因为这条线取自Alert.razar.cs:

protected override async Task OnAfterRenderAsync(bool firstRender)
{
await base.OnAfterRenderAsync(firstRender);
if (firstRender)
{
HtmlElement element = await JsInvokeAsync<HtmlElement>(JSInteropConstants.GetDomInfo, Ref);
_height = element.ClientHeight;
}
}

JsInvoke将返回一个null元素,从而返回element.ClientHeight。将产生CCD_ 3。AntBlazor提供了一个您应该继承的AntDesignTestContext。有了这些,它应该会起作用。

相关内容

  • 没有找到相关文章

最新更新