微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Atata C#如何打开新标签页?

如何解决Atata C#如何打开新标签页?

如何在Chrome浏览器中打开新标签页?

  • 我可以在考试开始时打开:

              AtataContext.Configure()
                  .UseChrome()
                  .WithArguments("new tab")
    
  • 我试图按快捷方式“ CTRL + T:

    [PressKeys("control" + "t",TriggerEvents.AfterClick)]

OR

.Press("^t");

解决方法

显然,对于chromedriver,CTRL + T组合不再起作用。但是我们可以使用window.open() JavaScript,它还会打开新的标签。

AtataContext.Current.Driver.ExecuteScript("window.open()");

// You also need to switch to newly opened tab.
Go.ToNextWindow<OrdinaryPage>(); // Set the type of your page object instead of OrdinaryPage.
Go.ToUrl("/someurl"); // Set URL.

您还可以将此代码块提取到方法中:

public static TPage CreateAndSwitchToNewTab<TPage>(string url)
    where TPage : Page<TPage>
{
    AtataContext.Current.Driver.ExecuteScript("window.open()");

    var page = Go.ToNextWindow<TPage>();
    Go.ToUrl(url);

    return page;
}

并以以下形式在测试中使用它:

CreateAndSwitchToNewTab<ProductsPage>("/products")
    .PageTitle.Should.Contain("Products");

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。