如何为这个元素编写定位器

问题描述 投票:-1回答:3

我正在运行自动UI测试,并希望验证此按钮是否已禁用,但我不确定如何为此元素创建定位器:

元素来源

<a data-hook="loginbutton" 
   class="mb-button mb-button--wider mb-button--primary 
          mb-button--disabled mb-button" tabindex="0">Login</a>

我之前使用了data-hook属性作为按钮,但即使启用或禁用按钮,按钮也只有一个数据挂钩。

python-2.7 selenium pycharm
3个回答
0
投票

CSS选择器是我认为你可以使用的最佳选择:

find_element_by_css_selector(a[".mb-button.mb-button--wider.mb-button--primary.mb-button--disabled.mb-button"])

或这个:

find_element_by_css_selector(a[data-hook="loginbutton"])

第一个基本上是使用类,因此它可以更短,取决于元素的类在Web中的独特性


0
投票

这就是我最终做的 -

    def login_button_disabled(self):
        self.login_button_disabled = self.browser.find_element_by_class_name("mb-button--disabled")
        if self.login_button_disabled.is_displayed():
            print("Login Button Disabled")
        else:
            print("Login Button Enabled")

0
投票

您可以将此Xpath用于上述元素。 xpath = // a [contains(text(),'Login')]

© www.soinside.com 2019 - 2024. All rights reserved.