Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.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# 如果语句通过,则进行中断测试_C#_Selenium - Fatal编程技术网

C# 如果语句通过,则进行中断测试

C# 如果语句通过,则进行中断测试,c#,selenium,C#,Selenium,我正在写一个测试,点击一个按钮打开一个窗口。该功能应切换窗口,但有时您可以继续单击“打开”,并显示更多窗口,直到内存丢失 我做了一个简单的循环,如果它对同一个元素的计数超过2次,就会中断测试 这就是我目前所拥有的 [FindsBy(How = How.XPath, Using = ".//*[@data-id='panel_workspace_list_panel']//*[@data-id[starts-with(.,'bookmark-')]]")] IWebElement bookmark

我正在写一个测试,点击一个按钮打开一个窗口。该功能应切换窗口,但有时您可以继续单击“打开”,并显示更多窗口,直到内存丢失

我做了一个简单的循环,如果它对同一个元素的计数超过2次,就会中断测试

这就是我目前所拥有的

[FindsBy(How = How.XPath, Using = ".//*[@data-id='panel_workspace_list_panel']//*[@data-id[starts-with(.,'bookmark-')]]")]
IWebElement bookmarklist{ get; set; }

[FindsBy(How = How.XPath, Using = ".//*[@data-id='dialog_bookmark']")]
IList<IWebElement> bookmark_dialog { get; set; }

   public void Bug2463()
     {

         for (int i = 0; i < 10; i++)
            {
               bookmarklist.Click();
            }

            var count = bookmark_dialog.Count();

            if (count > 2)
            {
                return;
            }
        }
[FindsBy(How=How.XPath,Using=“../*[@data-id='panel\u-workspace\u-list\u-panel']/*[@data-id[以(,'bookmark-')]]开头]
IWebElement书签列表{get;set;}
[FindsBy(How=How.XPath,使用=“./*[@data id='dialog\u bookmark']”)
IList书签_对话框{get;set;}
公共图书馆编号2463()
{
对于(int i=0;i<10;i++)
{
书签列表。单击();
}
var count=bookmark_dialog.count();
如果(计数>2)
{
返回;
}
}

任何好的建议:)?

如果您想检查打开的窗口/选项卡的数量,您应该使用
Driver.WindowHandles.Count()
属性,而不要计算元素,因为您正在计算使用此XPath的元素数
“/*[@data id='dialog\u bookmark']”
当前窗口DOM中有多少个元素