selenuim不能使用find_element_by_link_text、find_element_by_partial_link_text定位的场景
问题
如下图所示,直接使用driver.find_element_by_link_text、find_element_by_partial_link_text无法定位
分析
按之前的测试经验,考虑到可能得使用相对定位
首先找到定位元素的父元素
需要定位的元素是第二个子元素
使用相对定位的方法,在此使用css定位
在控制台确定定位表达式可以使用
定位表达式:.ivu-menu>.ivu-menu-submenu:nth-child(2)
.ivu-menu 为父元素class属性
.ivu-menu-submenu 为子元素class属性
nth-child(2) 表示定位第2个元素,因为有多个class属性为ivu-menu-submenu的元素
# .ivu-menu>.ivu-menu-submenu:nth-child(2)
driver.find_element_by_css_selector('.ivu-menu>.ivu-menu-submenu:nth-child(2)').click()
使用此方法定位成功。