NUnit GUI Runner и квартира State

Как вы устанавливаете состояние квартиры в NUnit GUI Runner? Я пытаюсь запустить один тест NUnit с WatiN, и я получаю сообщение:

MyNamespace.LoginTests.CanLogin:
System.Threading.ThreadStateException: для CurrentThread необходимо установить для ApartmentState значение ApartmentState.STA, чтобы иметь возможность автоматизировать Internet Explorer.

2 ответа

Решение

Вам нужно добавить некоторую конфигурацию в файл app.config вашей сборки (если у вас его нет, создайте новый), чтобы NUnit работал как STA:

<?xml version="1.0" encoding="utf-8" ?>

<configuration>
    <configSections>
        <sectionGroup name="NUnit">
            <section name="TestRunner" 
                     type="System.Configuration.NameValueSectionHandler"/>
        </sectionGroup>
    </configSections>

    <NUnit>
        <TestRunner>
            <add key="ApartmentState" value="STA" />
        </TestRunner>
    </NUnit>
</configuration>

( первоисточник)

Начиная с NUnit 2.5, используйте в своих тестах атрибут requireSTA.

Другие вопросы по тегам