2014-02-12 4 views
0

Я работаю над проектом C# NUnit на основе селен-webdriver, где у меня есть несколько тестов, которые снимают скриншоты и записывают видео каждого тестового сценария с использованием Microsoft.Expression.Encoder .dll. Я планирую запустить эти тесты из командной строки, используя приведенный ниже пример кода.Запуск селен-webdriver C# -тест с Microsoft.Expression.Encoder из командной строки

nunit-console /run:MyProject.Tests.SampleTest MyProject.dll 

Как мой проект построен на платформе .NET Framework 4.0, я обновил файл конфигурации для NUnit использовать рамки 4.0, используя следующую строку настройки.

<supportedRuntime version="v4.0.30319" /> 

Моя проблема, когда я пытаюсь запустить тест, я получаю ниже ошибки. Я попытался построить проект в режиме x86 и x64, но проблема остается.

Ошибки и неудачи: 1) Тест ошибок: MyProject.Tests.SampleTest System.BadImageFormatException: Не удалось загрузить файл или сборку «Microsoft.Expression.Encoder, Version = 4.0.0.0, культура = нейтральной, PublicKeyToken = 31bf3856ad364e35 'или одна из его зависимостей. Была сделана попытка загрузить программу с неправильным форматом.

Я также попытался запустить простой тест, который отлично работает из командной строки.

+0

Похоже, он составляется в другой архитектуры, чем то, над чем вы работаете. Что вы собираете в тестовой библиотеке? Любой процессор? x86? – Arran

+0

Я пробовал компиляцию под любым процессором, x86 и x64. Каждый раз с тем же результатом. –

ответ

0

Я понял решение. Поскольку я использую DLL библиотеки Microsoft.Expression.Encoder в своем проекте для записи видеотеста, эта DLL компилируется как x86. Таким образом, я могу сохранить проект Selenium C# в любом режиме процессора и использовать следующую команду для выполнения тестов.

nunit-console-x86 /run:MyProject.Tests.SampleTest MyProject.dll 

папка Nunit имеет два "NUnit-консоль" EXEs (NUnit-console.exe и NUnit-консоль-x86.exe)

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