有没有办法将By Locator从当前正在使用的IWebElement中拉出来?
答案 0 :(得分:0)
我不知道内置的方法可以做到这一点,但这可以使用具有事件成员EventFiringWebDriver
的{{1}}类来实现。该事件的参数类型为OnFindElementCompleted
,它会公开FindElementEventArgs
类型的FindMethod
成员,为您提供所需的内容 - 您在调用{{1}时使用的By
参数}。
订阅By
时,您可以捕获FindElement
值并将其存储在静态字典中。
奇怪的是OnFindElementCompleted
类型没有成员来表示找到的元素,因此要获得相关元素,您将不得不做一些涉及使用FindElementEventArgs.FindMethod
FindElementEventArgs
成员的hack。 1}}执行相同的搜索。您可能会遇到一些循环事件的问题,您可以通过将Element
投射到FindElementEventArgs
并搜索FindElementEventArgs.Driver
属性来规避这些事件。
抱歉,我无法为您提供更全面的解决方案,我在床上并在手机上进行此操作!