繁体   English   中英

无法使用 C# 在 selenium 浏览器中单击

[英]Not able To click in selenium browser with C#

按钮类型为输入。

<input type="submit" value="Send" class="wpcf7-form-control wpcf7-submit btn solid">

我想使用代码单击此按钮,尝试按类名单击按钮。

我的代码如下所示,但没有成功。

string url1 = "myUrl";
IWebDriver driver = new ChromeDriver(Application.StartupPath);
driver.Navigate().GoToUrl(url1);    
driver.FindElement(By.ClassName("wpcf7-form-control .wpcf7-submit btn solid")).Click();

这会引发以下错误:

不允许使用复合类名。 类名中不能有空格。 请改用 CSS 选择器。 并且不使用单个类,因为还有一个同名的类。

@Kishan - 我检查了你的代码,最后,我找到了解决方案

试试下面的代码:

driver.FindElement(By.XPath("//input[@type='submit']")).Click();

我会尽量避免使用 XPath,而是会在您的输入中添加一个 Id。 原因是 XPath 比 Id 更有可能随着时间的推移而改变。 此外,如果您添加另一个具有相同 HTML 的元素,selenium 将无法区分它们并始终选择第一个元素。 使用 Id 还可以使您的代码更具可读性。 你可以试试这个:

<input type="submit" value="Send" Id="YourButtonId" class="wpcf7-form-control wpcf7-submit btn solid">

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM