断开测试if语句传递

时间:2017-02-22 10:58:55

标签: c# selenium

我正在编写一个单击按钮打开窗口的测试。该功能应切换窗口,但有时你可以继续点击"打开"并且更多的窗口出现,直到记忆丢失。

我做了一个简单的循环,如果它计算相同的元素超过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;
            }
        }

有什么好的建议:)?

1 个答案:

答案 0 :(得分:0)

如果你想检查打开的窗口/标签的数量,你应该使用Driver.WindowHandles.Count()属性而不计算元素,因为你要计算这个XPath ".//*[@data-id='dialog_bookmark']"有多少元素?在当前窗口DOM