我正在尝试验证在未填写/选择字段时提交页面后页面上存在验证错误。
我发现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;']")
答案 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')]");