Повторное использование экземпляра браузера в нескольких тестах в одном классе с помощью 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.