如何使用python selenium验证验证错误消息的属性文本?

时间:2015-08-17 17:47:07

标签: python selenium

我正在尝试验证在未填写/选择字段时提交页面后页面上存在验证错误。

我发现html显示"样式"当错误显示时,属性是不同的,所以我想验证" style"文本。

以下是页面中的html:

错误未显示

    <div class="errorDiv2">
    <span id="MainContent_ClinicName_mbRequiredValidator" class="errorMsg" style="display:none;">Please provide clinic name.</span>

错误显示

    <div class="errorDiv2">
    <span id="MainContent_ClinicName_mbRequiredValidator" class="errorMsg" style="display: inline;">Please provide clinic name.</span>

我能够使用xpath和driver.find_element_by_id找到id,但不能找到style属性中的文本(display:inline;)。

我已经使用过此代码,但无论如何都找不到ID,并且找不到属性中的文本。

clinicNameError = driver.find_elements_by_xpath("//*[@id='MainContent_ClinicName_mbRequiredValidator']['@style=display: inline;']")

1 个答案:

答案 0 :(得分:0)

你有没有试过这样的事情:

clinicNameError = driver.find_elements_by_xpath("//*[contains(@id,'MainContent_ClinicName_mbRequiredValidator') and contains(@style, 'inline')]");

还是按课程?

clinicNameError = driver.find_elements_by_xpath("//*[contains(@id,'MainContent_ClinicName_mbRequiredValidator') and contains(@class, 'errorMsg')]");