2016-07-11 3 views
3

Я создал новое приложение Service Fabric, используя шаблон Stateless Service. Я добавил простой класс, так что я могу написать модульный тест для этого:Использование XUnit с сервисной тканью

public class FakeClass 
{ 
    public void DoStuff() 
    { 
     FabricClient client = new FabricClient(); 
    } 
} 

создать новую библиотеку классов для модульных тестов и ссылки на пакеты бегун NuGet XUnit и XUnit. Когда я пытаюсь запустить юнит-тесты, которые я получаю следующее сообщение об ошибке:

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 работать с пакетом ткани, так что я могу писать тесты?

ответ

5

Проблема, по-видимому, связана с настройкой по умолчанию при создании новых проектов. Когда вы создаете новый проект, он использует Any CPU в качестве архитектуры по умолчанию, а для службы Fabric требуется x64.

Мне нужно было войти в свойства сборки проекта и изменить его, используя x64 в качестве целевой платформы. После этого мои тестовые тесты не отображались в тестовом обозревателе, поэтому мне пришлось изменить следующую настройку:

Test -> Test Settings -> Default Processor Architecture -> x64

+0

Три часа застряли, пока я не прочитал это. – Jesus

-1

Эта проблема не имеет отношения к ткани обслуживания. Можете ли вы попробовать переустановить пакет xunit?

+0

Проблема была связана с использованием настроек сборки AnyCPU и x64. – Dismissile

Смежные вопросы