0

我正在使用 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']");
    }
  }
4

1 回答 1

1

在创建任何浏览器之前调用 EnableStickySession。大多数用户在常见的 init/TestInitialize/ClassInitialize 中执行此操作。

于 2015-04-02T15:35:39.817 回答