Запуск теста Selenium webdriver C# с Microsoft.Expression.Encoder из командной строки

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

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

Поскольку мой проект построен на .NET Framework 4.0, я обновил файл конфигурации для nunit, чтобы использовать framework 4.0, используя приведенную ниже строку настроек.

<supportedRuntime version="v4.0.30319" />

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

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

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


person A_B    schedule 12.02.2014    source источник
comment
Похоже, он компилируется в другой архитектуре, чем та, на которой вы работаете. Под чем вы компилируете тестовую библиотеку? Любой процессор? х86?   -  person Arran    schedule 12.02.2014
comment
Пробовал компилировать под Any CPU, x86 и x64. Каждый раз с одним и тем же результатом.   -  person A_B    schedule 12.02.2014


Ответы (1)


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

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

Папка Nunit содержит два исполняемых файла "nunit-console" (nunit-console.exe и nunit-console-x86.exe)

person A_B    schedule 20.02.2014