Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# webdriver在C中为IE有效切换窗口?_C#_Internet Explorer_Window_Webdriver_Window Handles - Fatal编程技术网

C# webdriver在C中为IE有效切换窗口?

C# webdriver在C中为IE有效切换窗口?,c#,internet-explorer,window,webdriver,window-handles,C#,Internet Explorer,Window,Webdriver,Window Handles,我正在为一个网站编写一些自动化测试。我的测试应该做的是:运行一个链接列表,每个链接都提供自己的窗口,检查窗口中的数据,然后关闭子窗口并返回到父窗口 虽然我可以访问每个链接,但无法将焦点切换到子窗口。而driver.WindowHandles只显示一个句柄,前一天没有显示。在过去的两天里,我一直在这个问题上纠缠不休,感觉就像是在倒退。任何和所有的帮助都将不胜感激 下面是我的代码部分 if (pop_continue) { //windowsBefore = 1 wait.U

我正在为一个网站编写一些自动化测试。我的测试应该做的是:运行一个链接列表,每个链接都提供自己的窗口,检查窗口中的数据,然后关闭子窗口并返回到父窗口

虽然我可以访问每个链接,但无法将焦点切换到子窗口。而driver.WindowHandles只显示一个句柄,前一天没有显示。在过去的两天里,我一直在这个问题上纠缠不休,感觉就像是在倒退。任何和所有的帮助都将不胜感激

下面是我的代码部分

if (pop_continue)
{
      //windowsBefore = 1
      wait.Until((_driver) => { return _driver.WindowHandles.Count != windowsBefore; });
      ReadOnlyCollection<string> Handles = driver.WindowHandles;
      foreach (var handle in Handles)
      {
            if (!handle.Equals(baseWindowHndl))
            {
                  driver.SwitchTo().Window(handle);
                  break;
            }
      }
      try
      {
            Console.WriteLine("Child Window (a) " + driver.CurrentWindowHandle);
            //..

            driver.SwitchTo().Window(baseWindowHndl); //baseWindowHndl is initialized to parent handle
            Console.WriteLine("Parent Window (b) " + driver.CurrentWindowHandle);
      }
      catch (Exception e)
      {
             Console.WriteLine("<-Something stupid occurred.->");
             Console.WriteLine(e.Source + " : " + e.Message);
      }
      //////////////
}

我在这里发布了一个类似问题的答案: