为webdriver创建UI对象存储库

时间:2011-12-08 15:52:52

标签: webdriver

对于那些熟悉自动化测试工具的人来说,你知道他们都有某种“对象存储库”,它存储了带有标识符的UI元素的映射。我发现这是必不可少的,我想复制这个为webdriver。有没有人这样做过?有小费吗 ?谷歌没有帮助这个。 C#示例,如果可以的话,谢谢

2 个答案:

答案 0 :(得分:0)

我使用Webinator(包装WebDriver)但想法是一样的 - 我通常做一个静态的“Map”类,如下所示:

public static class CollectionMap
{
    public static Locator
        LocatorTitle           = new Locator(FindBy.Id, "Title"),
        LocatorDescription     = new Locator(FindBy.Id, "Description"),
        LocatorSave            = new Locator(FindBy.Id, "submit"),
        LocatorDelete          = new Locator(FindBy.XPath, "//*[contains(@class,'deleteBox')]/a"),
        LocatorDeleteConfirm   = new Locator(FindBy.Id, "delete-collection-dialogConfirmationLink"),
        LocatorCancel          = new Locator(FindBy.Id, "cancel");
}

像这样使用:

web.Click(CollectionMap.LocatorSave, WaitUntil.AjaxOrPostCompleted());

答案 1 :(得分:0)

我正在创建包含定位器映射的多个类。每个类对应于屏幕元素的逻辑分组。

public class TopLevel
{
    public const string username = "ctl00_ctl00_Main_Main_txtUsername";
}