C# 使用字典进行自动化测试

C# 使用字典进行自动化测试,c#,selenium-webdriver,C#,Selenium Webdriver,我想用selenium webdriver c#测试我的web应用程序。现在我正在看教程 IWebDriver chrome = new ChromeDriver(); chrome.Navigate().GoToUrl("http:////link//login"); IWebElement element = chrome.FindElement(By.XPath("usernamexpath")); element.Send

我想用selenium webdriver c#测试我的web应用程序。现在我正在看教程

        IWebDriver chrome = new ChromeDriver();
        chrome.Navigate().GoToUrl("http:////link//login");

        IWebElement element = chrome.FindElement(By.XPath("usernamexpath"));
        element.SendKeys("  ");

        element = chrome.FindElement(By.XPath("passwordxpath"));
        element.SendKeys("  ");
有一个类似这样的代码。在这里,我将测试登录页面。为此,我想创建一本词典。它将保存我应用程序中的所有xpath以及该字典,因此我不会一次又一次地查找xpath。问题是我不确定我是否应该用字典。你还推荐其他技术吗?或者我应该为dictionary创建一个类并像这样使用它

        XPaths path = new XPaths(); //dictonary class
        IWebDriver chrome = new ChromeDriver();
        chrome.Navigate().GoToUrl("http:////link//login");

        IWebElement element = chrome.FindElement(By.XPath(path.usernamefield));
        element.SendKeys("  ");

        element = chrome.FindElement(By.XPath(path.passwordfield));
        element.SendKeys("  ");

就我个人而言,我喜欢测试方法尽可能独立。这就是说,如果您要在其他测试方法中使用相同的路径,那么我建议只使用带有字段的静态类,这更适合您的第二个代码示例<代码>路径。用户名,而不是路径[“用户名”]。如果您实际上不是指
字典
,那么我会说是(只需删除
字段
):)使用static的原因是什么?这样您就不必创建实例了。如果你不需要一个功能性的对象,那就让一切都是静态的。事实上,我说错了。我并不是说真正的静态类。有静态字段的类是我要做的。。。你有没有想过“古菲”?如果是的话,我想听听你实施了什么。谢谢