日期:2014-05-20  浏览次数:20786 次

使用Robot Framework集成Selenium的自动化测试(八)
   写测试用例的时候遇到这样的一个问题:一个下拉框选项并不是一个正真的select,而是由一个input和JSF控件做的假的下拉框,这样如果我们想选择下拉框里面的值就不能使用下面的方法:

引用

Select From List  |  releaseDropDown  |  XXX


而且也不能使用下面的办法(本地连接服务器跑case是没有问题的,但是在服务器端部署了unix-firefox就不行),因为XPATH的定位有问题,这个XPATH我使用FIREFOX的SELENIUM录制得到的路径,还是不对,虽然你可以用方法is_element_present可以找到这个路径 但是确实点不到(也许是我的办法有问题)

引用

Call Selenium Api  |  click  |  xpath=//....



最后解决的办法是:确定你要选的内容,然后用光标(向上,向下箭头)去锁定

引用

    Call Selenium Api    click    xpath=//td[2]/img //点击触发下拉框展示    
    Sleep    5s
    Focus    neDropDown                             //定位
    Press Key Native    40                          //选择下一个
    Focus    neDropDown                             //定位
    Press Key Native    10                          //按enter key  
    Sleep    5s


这样就解决了问题,相当于跳开了xpath定位的问题,包括css, id 和name==
因为开发人员才不会管你自动化测试好不好写呢