我们已经在.net应用程序中运行了一些基本的selenium测试,以确保从菜单中获取的所有页面都会加载。我目前遇到的问题是子菜单中的一些但不是所有链接都会在firefox中传递但不在chrome中传递。
我尝试了几种不同的方法 a)
TomBrowser.Driver.FindElement(By.LinkText("Manage Inventory")).Click();
TomBrowser.Driver.FindElement(By.PartialLinkText("Inventory Report")).Click();
TomBrowser.Wait(x => x.Title.ToString().Equals("Current Inventory Report", StringComparison.InvariantCultureIgnoreCase));
b)
TomBrowser.Driver.FindElement(By.LinkText("Reports")).Click();
TomBrowser.Driver.FindElement(By.Id("side-menu")).FindElement(By.ClassName("active")).FindElement(By.PartialLinkText("Dispense Report")).Click();
TomBrowser.Wait(x => x.Title.ToString().Equals("Dispense Report", StringComparison.InvariantCultureIgnoreCase));
这两个测试都可以在firefox中使用,但不能在chrome中使用,但是也有一些测试适用于firefox和chrome,它们遵循相同的格式。
收到的错误消息是:
OpenQA.Selenium.NoSuchElementException:没有这样的元素:无法 locate元素:{“method”:“部分链接文本”,“选择器”:“库存 报告“}(会话信息:chrome = 63.0.3239.84)(驱动程序信息: chromedriver = 2.33.506120
和
OpenQA.Selenium.NoSuchElementException:没有这样的元素:无法 locate元素:{“method”:“部分链接文本”,“选择器”:“分配 报告“}(会话信息:chrome = 63.0.3239.84)(驱动程序信息: chromedriver = 2.33.506120
编辑:我的问题是为什么这个在firefox中运行但不是chrome,为什么它只在某些测试的chrome中失败而不是其他测试,而不是询问如何查找元素。