简体   繁体   English

如何使用 Safari 浏览器的 selenium C# 切换到新选项卡

[英]How to switch to new tab using selenium C# for Safari Browser

I want to switch to new tab opened by clicked link in Safari browser for MACOS.我想切换到通过在 Safari 浏览器中单击链接打开的新选项卡,用于 MACOS。

Code which is used for Chrome is not working for Safari browser.用于 Chrome 的代码不适用于 Safari 浏览器。

driver.SwitchTo().Window(driver.WindowHandles.Last()); driver.SwitchTo().Window(driver.WindowHandles.Last());

tried below code but not working- 1. driver.FindElementExistByWait(By.CssSelector("body")).SendKeys(Keys.Command + "\t");尝试下面的代码但不工作- 1. driver.FindElementExistByWait(By.CssSelector("body")).SendKeys(Keys.Command + "\t"); 2. driver.FindElementExistByWait(By.CssSelector("body")).SendKeys(Keys.Control + "\t"); 2. driver.FindElementExistByWait(By.CssSelector("body")).SendKeys(Keys.Control + "\t");

Can you please help to resolve this issue.你能帮忙解决这个问题吗?

This is kind of a two part process.....这是一个两部分的过程......

Switch to new tab:切换到新标签:

    public static string SwitchToTab()
    {
        var mainHandle = Driver.CurrentWindowHandle;
        var handles = Driver.WindowHandles;

        foreach (var handle in handles)
        {
            if (mainHandle == handle)
            {
                continue;
            }
            Driver.SwitchTo().Window(handle);
            break;
        }
        var result = Url;
        return result;
    }

Then switch to main content if necessary:然后根据需要切换到主要内容:

           public static void CloseNewTab()
    {
        var mainHandle = Driver.CurrentWindowHandle;
        var handles = Driver.WindowHandles;
        foreach (var handle in handles)
        {
            if (mainHandle == handle)
            {
                continue;
            }
            Driver.SwitchTo().Window(handle);
            Driver.Close();
            Driver.SwitchTo().Window(mainHandle);
            break;
        }
    }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何验证使用C#在带有TestComplete的浏览器中是否打开了新标签页 - How to verify that a new tab is opened in a browser with TestComplete using C# Selenium:使用C#在RemoteWebDriver中切换选项卡 - Selenium: switch tab in RemoteWebDriver with C# Selenium + C#单击链接时如何切换Firefox的另一个选项卡,它将在另一个选项卡中打开? - Selenium + C# How to switch another Tab of Firefox when click a link and it will open in another tab? 如何单击链接并在新选项卡中打开它 Selenium WebDriver C# - How to click a link and open it in a new tab Selenium WebDriver C# 如何在NUnit测试框架上使用Selenium C#在新的Chrome选项卡上打开URL - How to open a url on a new Chrome Tab using selenium C# over NUnit test framework 单击按钮C#Selenium后无法切换到新的浏览器窗口 - Cannot Switch to new browser Window after click button C# Selenium 如何在ASP.NET C#中使用GridView行命令在浏览器的新选项卡中打开PDF文件 - How To Open PDF Files In New Tab In Browser Using GridView Row Command In ASP.NET C# 如何使用 C# 在 Selenium WebDriver (Selenium 2) 中最大化浏览器窗口? - How to maximize the browser window in Selenium WebDriver (Selenium 2) using C#? 在新标签页硒C#中打开链接 - Open link in new tab selenium c# 如何使用 c# 检查 Selenium 中开关切换的 state - How to check state of a switch toggle in Selenium using c#
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM