如果在c#中找到图像,请单击

时间:2014-11-17 04:20:35

标签: c# selenium-webdriver

好的你好,我需要一些帮助。所以我正在使用c#winforms和selenium FireFox驱动程序。

这是我目前的代码。

IWebDriver driver = new FirefoxDriver();
Bitmap image1 = (Bitmap) Image.FromFile(@"C:\BotProgect\image1.png", true);
driver.moveToElement(image1);
driver.Click();

我需要做的是点击文件中的图片。此代码不适用于所有Got错误。我需要它来单击image1并在点击之前测试它是否存在。谢谢 !

错误说

错误1' OpenQA.Selenium.IWebDriver'不包含' moveToElement'的定义没有扩展方法' moveToElement'接受第一个类型' OpenQA.Selenium.IWebDriver'可以找到(你错过了使用指令或汇编引用吗?)35 20

错误2' OpenQA.Selenium.IWebDriver'不包含' Click'的定义没有扩展方法'点击'接受第一个类型' OpenQA.Selenium.IWebDriver'可以找到(你错过了使用指令或汇编引用吗?)36 20

1 个答案:

答案 0 :(得分:2)

你得到的错误是完美的,他们是预期的。

MoveToelement - 此类函数受Actions类支持,应该在此类对象上调用,而不是在 IWebDriver 对象上调用。

IWebElement Target_Elem= driver.FindElement(By.Id("ID_LOCATOR"));
Actions builder = new Actions(driver)
builder.MoveToElement(Target_Elem).Click().Build().Perform();

单击 - 此功能/方法通过 IWebElement 执行,而不是在驱动程序上执行。因此,正确的使用方法是。

driver.FindElement(By.Id("ID_LOCATOR")).Click();