C# 量角器网。缺少一些定位器
我使用Visual Studio 2015作为我的IDE和 我在我的项目中安装了量角器(版本0.10.2)。 在我下面的代码中C# 量角器网。缺少一些定位器,c#,selenium-webdriver,protractor-net,C#,Selenium Webdriver,Protractor Net,我使用Visual Studio 2015作为我的IDE和 我在我的项目中安装了量角器(版本0.10.2)。 在我下面的代码中 [TestMethod] 公共无效登录() { IWebDriver驱动程序=新的ChromeDriver(); var ngDriver=新的NgWebDriver(驱动程序); ngDriver.Url=”https://weather.com"; ngDriver.FindElement(By.ClassName(“用户登录”))。单击(); 现在,我想使用but
[TestMethod]
公共无效登录()
{
IWebDriver驱动程序=新的ChromeDriver();
var ngDriver=新的NgWebDriver(驱动程序);
ngDriver.Url=”https://weather.com";
ngDriver.FindElement(By.ClassName(“用户登录”))。单击();
现在,我想使用buttonText定位器定位“登录”按钮。
但是,当我尝试ngDriver.FindElement(NgBy.)
时,NgBy之后只显示以下选项:
结合
等于,
严格的约束,
精密中继器,
模型
参考平等,
中继器,
选择π
当我用WebStorm和Javascript尝试这个时,
我能够找到并使用按钮,如下所示
元素(by.buttonText('登录'))。单击()
为什么NgBy后面不出现ButtonText之类的东西
即使在中,他也在使用Ngby.Input(),而我在列表中没有。为什么我缺少所有这些定位器
我发现量角器下的NgBy类仅提供以下内容: 所以,也许量角器网络不提供NgBy.ButtonText()?
但这对我来说毫无意义。我认为我仍然在做错事!请参阅此请求的评论: 您是对的,在“主”量角器网络分叉(由bbaia维护)中,与原始量角器项目相比,缺少一些NGBY 选项1 您通常可以使用普通的.Net WebDriver By(例如XPath或CssSelector)来定位元素: 你也会发现这很有价值- 选项2 您还可以使用以下内容编写自己的实现
driver.FindElements(按.TagName(“按钮”))。其中(e=>e.Text.Trim()==“Text”).FirstOrDefault();
注意,在许多情况下,这比使用XPath慢得多
选项3
如果因为您正在移植已经在使用这些方法的代码,所以拥有这些方法对您来说很重要,那么您可以尝试sergueik fork,它确实有缺少的方法:
请注意,这是在主分叉的后面-讨论并没有解释缺少的NGBY。正如JP-3在其最后评论中提到的,这些方法是有问题的,IMO决定不将它们包括在.Net端口中是有问题的。谢谢。我知道有点晚了。:)