我正在测试一个网站,其中包含按元素或ID无法识别的按钮。但是,我可以通过xpath
或css
类来识别它。如何使用这两个属性之一单击按钮。我可以使用get_element_by_xpath;
断言按钮在那里,但我似乎无法使用click_element
,click_link
或click_button
使用id_or_elem
。你会用什么声明来点击这样的按钮?
编辑: 测试代码如下所示:(有意删除网页名称)
class TestMyTest(cases.SSTTestCase):
def test_mytestcase_home_page(self):
go_to('http://www.mywebpage.com')
assert_title_contains('Page Name')
assert_element(tag='a', text='Log in')
click_element(id_or_elem='page_nav')
assert_title_contains('Login')
assert_element(id='tbLUser')
write_textfield('tbLUser','username')
assert_element(id='tbLPass')
write_textfield('tbLPass','badpassword')
assert_element(css_class='btn-login1')
get_element_by_xpath('//*[@id="login_box"]/div/a/img')
我试图测试的代码:
<div class="btn-login1">
<a href="javascript:void(0)" onclick=javascript:return Validate(document.theLoginForm,'/mypage/mywebpage.asp');" onmouseout="MM_swapImgRestore();" onmouseover="MM_swapImage('lg5_login','','/assets/page4/lg5_login_f2.png',1);">
<img name="lg5_login" src="http://www.mywebpage.com/login/lg5_login.png" border="0" alt="Log in Now">
</a>
</div>
答案 0 :(得分:1)
如果这个答案对别人有帮助。我们能够通过以下解决方案解决问题。
click_element(get_element_by_xpath('your xpath'), wait=True)
click_link(get_element_by_xpath('your xpath'), wait=True)
click_button(get_element_by_xpath('your xpath'), wait=True)
Parameters: id_or_elem元素的标识符或其元素对象。 所有点击操作都应支持id或元素