如何使用C#遍历DOM对象?

时间:2018-04-30 11:29:14

标签: c# dom automated-tests ranorex

我有一个网页,我必须遍历DOM,找出所有以class开头的"accordion-toggle "元素。打开/关闭手风琴小部件时,每个此类对象都会分配一个类似的类: enter image description here

为Ranorex进行自动化黑盒测试,点击所有手风琴。检查他们的行为,我需要一个类似DOM的对象,其中包含页面中的所有手风琴,以便自动化测试软件可以点击对象&检查它们是否表现正常。我该如何提取这些信息?我现在尝试两天看到页面的相当层次结构并且想知道,如果有一种简单的方法来提取这些信息。

修改

实际上,有一种方法可以做到这一点,但我得到了System.OutOfMemoryException,尽管服务器上有足够的内存可用。你走了:

    /// <summary>
    /// Finds the accordion widgets
    /// </summary>
    public void FindAccordionWidgets()
    {
        Report.Log(ReportLevel.Info, "Code", "FindAccordionWidgets() started…");
        IList<Ranorex.Unknown> elementList = repo.Home.Self.Find<Ranorex.Unknown>("//*[@class~'accordion-toggle'][@visible='true']");
        Report.Log(ReportLevel.Info, "Code", "elementList populated.");

        foreach (Ranorex.Unknown elementItem in elementList)
        {
            // Do whatever you want here
            Report.Log(ReportLevel.Info, "Code", "elementItem " + elementItem.FlavorName + isOfType + elementItem.GetType());
        }
    }

0 个答案:

没有答案