更改密码的测试用例-使用Selenium C#进行单元测试

本文关键字:Selenium 单元测试 使用 密码 测试用例 | 更新日期: 2023-09-27 17:57:41

我在这里遇到了一个问题:我写了一个测试用例来更改密码,然后用新密码登录。我无法将新密码分配给变量"currentPassword",以便在下一个测试用例中重用。我有一个解决方案,就是在TestCleanup中放一个方法将密码更改回原来的值。但我不希望这个过程出现在浏览器上。所以我在一个新的Ghost驱动程序中运行了这个方法(我尝试了PhantomJS和HTMLUnit,但它们都不起作用)。这是我的代码,请检查错误是什么,顺便说一句,还有其他解决方案吗?

[TestMethod]
        public void test()
        {
            IWebDriver newDriver = new RemoteWebDriver(DesiredCapabilities.HtmlUnit());
            newDriver.Navigate().GoToUrl("http://192.168.189.49:8099/Account/Login.cshtml");
            newDriver.FindElement(By.Id("username")).SendKeys(Constant.validAcc);
            newDriver.FindElement(By.Id("password")).SendKeys(Constant.newPass);
            newDriver.FindElement(By.XPath("//input[@value='login']")).Submit();
    }

非常感谢大家。

更改密码的测试用例-使用Selenium C#进行单元测试

这只是语法问题:

newDriver.FindElement(By.XPath("//input[@value='login']")).Submit();

应该是

newDriver.FindElement(By.XPath("//input[@value='login']")).Click();

尽管如此,我并没有真正看到它实际上是在更改密码,因为它只是输入名称、密码,然后单击登录按钮。您发布的代码也不是测试清理。