Установка состояния квартиры для использования WatIn с MSTest - PullRequest
1 голос
/ 13 декабря 2010

Я получаю следующую ошибку:

Для CurrentThread необходимо, чтобы его ApartmentState был установлен в ApartmentState.STA, чтобы иметь возможность автоматизировать Internet Explorer.

С помощью следующего кода:

    [TestClass]
    public class UnitTest1
    {

    [AssemblyInitialize]
    public static void AssemblySetup(TestContext context)
    {

    }

    [TestMethod]
    [HostType("ASP.NET")]
    [AspNetDevelopmentServerHost("C:\\SomePath", "/")]
    [UrlToTest("http://localhost/HomeView.aspx")]
    public void TestMethod1()
    {
        using(IE ie = new IE("http://localhost/HomeView.aspx",true))
        {
            ie.TextField(Find.ById("MainContent_txtDLNumber")).TypeText("a235801945550");
        }
    }
}

Есть ли другой подход к использованию WatIn с MsTest?

Ответы [ 3 ]

0 голосов
/ 28 апреля 2011

Рассмотрите возможность обновления кода для использования NUnit 2.5 с атрибутом Требуется STA .

0 голосов
/ 29 апреля 2013

Попробуйте вместо этого:

[STAThread]
static void Main(string[] args)
{
}
0 голосов
/ 24 декабря 2010

Вам, вероятно, нужно будет соответствующим образом настроить свой конфиг, ниже должна дать подсказку

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

  <NUnit>
    <TestRunner>
      <!-- Valid values are STA,MTA. Others ignored. -->
      <add key="ApartmentState" value="STA" />
    </TestRunner>
  </NUnit>


</configuration>
...