如何以编程方式获取 expand/collapse 的 xpath

How to get the xpath of expand/collapse programmatically

我正在尝试使用 xpath 选择器确定对象是在 selenium 中以编程方式展开还是折叠。

<img class="action-icon ng-class:((vm.editMode &amp;&amp; vm.editAction == action) ? 'edit-expanded' : 'edit-collapsed' ) edit-collapsed" ng-src="*********">

所以,如果 selenium xpath returns 'edit-expanded' 或 false 'edit-collapsed'

,我需要 return true

这取决于您的特定文本'edit-expanded' 和 'edit-collapsed' 是否存在于 img 标签的 class 中

如果 'edit-expanded' 和 'edit-collapsed' 都会出现,那么在 xpath 下方给你 false,如果只有 'edit-expanded' 只出现那么它给你 true

boolean( //img[contains(@class,'edit-expanded') and not(contains(@class,'edit-collapsed'))])

如果两者都存在并且低于 xpath return true。如果任何一个不存在,那么它 return false

boolean( //img[contains(@class,'edit-expanded') and contains(@class,'edit-collapsed')])

如果您想要单独的 xpath,则下面是 xpath。他们 return 根据你的 img->class

boolean( //img[contains(@class,'edit-expanded')])

boolean( //img[contains(@class,'edit-collapsed')])