单击 Canopy WebElement

Click a Canopy WebElement

我有一个按钮,我正在用这样的顶篷取回...

let buttons = elements ".buttonClass"

最后一个按钮是我想要单击的按钮,但是当我单击...

click buttons.tail

我收到一个错误

"Can't click [OpenQA.Selenium.Remote.RemoteWebElement] because it is not a string or webelement"

所以我的问题是,有没有办法做我想做的事情?

buttons.tail 不是 "last button",而是一个包含除第一个按钮以外的所有按钮的列表。这就是 "tail" 通常与列表相关的含义。试试这个:

let list = [1;2;3]
let tail = list.Tail   // tail = [2;3]

要获取 F# 列表的最后一个元素,请使用 List.last 函数:

let buttons = elements ".buttonClass"
click (List.last buttons)

elements (selector) 返回的列表是 IWebElement List

因此,通过使用 buttons.Item (buttons.Length - 1) 访问列表,我能够访问具有点击功能的 WebElement 对象。

let buttons = elements ".buttonClass"
(buttons.Item (buttons.Length - 1)).Click()

Documentation for RemoteWebElement

Canopy API Documentation