将 XUnit 与 Service Fabric 结合使用
Using XUnit with Service Fabric
我使用无状态服务模板创建了一个新的 Service Fabric 应用程序。我添加了一个简单的 class 以便我可以为其编写单元测试:
public class FakeClass
{
public void DoStuff()
{
FabricClient client = new FabricClient();
}
}
我为单元测试创建了一个新的 class 库并引用了 xUnit 和 xUnit 运行ner nuget 包。当我尝试 运行 单元测试时,出现以下错误:
Result Message: System.BadImageFormatException : Could not load file
or assembly 'XUnitExample.WebService, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=null' or one of its dependencies. An
attempt was made to load a program with an incorrect format.
如何让 xUnit 与 Service Fabric 一起工作以便编写单元测试?
此问题与服务结构无关。您可以尝试重新安装 xunit 软件包吗?
这个问题显然与创建新项目时的默认设置有关。当您创建新项目时,它使用 Any CPU
作为默认体系结构,而 Service Fabric 需要 x64。
我不得不进入 Project Build 属性并将其更改为使用 x64 作为目标平台。这样做之后,我的单元测试没有出现在测试资源管理器中,所以我不得不更改以下设置:
Test -> Test Settings -> Default Processor Architecture -> x64
我使用无状态服务模板创建了一个新的 Service Fabric 应用程序。我添加了一个简单的 class 以便我可以为其编写单元测试:
public class FakeClass
{
public void DoStuff()
{
FabricClient client = new FabricClient();
}
}
我为单元测试创建了一个新的 class 库并引用了 xUnit 和 xUnit 运行ner nuget 包。当我尝试 运行 单元测试时,出现以下错误:
Result Message: System.BadImageFormatException : Could not load file or assembly 'XUnitExample.WebService, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. An attempt was made to load a program with an incorrect format.
如何让 xUnit 与 Service Fabric 一起工作以便编写单元测试?
此问题与服务结构无关。您可以尝试重新安装 xunit 软件包吗?
这个问题显然与创建新项目时的默认设置有关。当您创建新项目时,它使用 Any CPU
作为默认体系结构,而 Service Fabric 需要 x64。
我不得不进入 Project Build 属性并将其更改为使用 x64 作为目标平台。这样做之后,我的单元测试没有出现在测试资源管理器中,所以我不得不更改以下设置:
Test -> Test Settings -> Default Processor Architecture -> x64