使用SST框架,如何通过css类或xpath单击链接?

时间:2014-11-24 18:53:58

标签: python selenium xpath css-selectors

我正在测试一个网站,其中包含按元素或ID无法识别的按钮。但是,我可以通过xpathcss类来识别它。如何使用这两个属性之一单击按钮。我可以使用get_element_by_xpath;断言按钮在那里,但我似乎无法使用click_elementclick_linkclick_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>

1 个答案:

答案 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或元素