Повторное использование экземпляра браузера в нескольких тестах в одном классе с помощью FluentAutomation с MSTests

Я использую FluentAutomation с MSTests. Мне нужно иметь возможность повторно использовать экземпляр браузера в нескольких методах тестирования в одном классе. Например, конструктор или метод TestInitialize войдут в URL, тогда все последующие методы Test в классе должны будут использовать один и тот же зарегистрированный сеанс и экземпляр браузера.

Пробовал с помощью FluentSession.EnableStickySession(); но это не сработало, и второй метод выполнения жалуется, что IEDriver уже используется другим процессом.

Есть идеи, как решить эту проблему?

Вот пример кода для сценария:

[TestClass]
  public class DummyTests : FluentTest
  {
    public DummyTests()
    {
      SeleniumWebDriver.Bootstrap(SeleniumWebDriver.Browser.InternetExplorer);
      I.Open(@"http://google.com");
      FluentSession.EnableStickySession();
    }

    [TestMethod]
    public void First()
    {
      I.Wait(2)
        .Enter("NBA").In("input#lst-ib.gsfi")
        .Click("button[type='submit']");

    }

    [TestMethod]
    public void Second()
    {
      I.Wait(2)
        .Enter("MLB").In("input#lst-ib.gsfi")
        .Click("button[type='submit']");
    }
  }

1 ответ

Решение

Вызовите EnableStickySession перед созданием любых браузеров. Большинство пользователей делают это в общем init/TestInitialize/ClassInitialize.

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