qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請訪問 http://qaseven.github.io/

          Selenium操作聯(lián)動菜單

          最近在用Selenium實現(xiàn)自動化測試的過程中遇到了一些問題,不太好解決,或者解決了也覺得不是特別好的辦法,在這里寫出來一個是記錄一下,也向大家需求一下幫助,看看有沒有更好的辦法,謝謝!
            一個問題就是二級聯(lián)動菜單,比如選擇省市的二級聯(lián)動菜單,在第一個菜單中選擇省份后會觸發(fā)二級菜單的load事件去 裝載市區(qū)的option label。可如果單獨用selenium.select(locator,label='xxx');的操作是無法觸發(fā)二級菜單的load事件的,從而執(zhí)行時無法找到相應(yīng)的label。大家的建議都是用fireEvent、mouseUp、mouseDown之類的API進行調(diào)試,可這些方法仍沒有解決我的問題。后來是通過先focus,再click,最后select的步驟進行操作才能觸發(fā)事件并選到相應(yīng)的label。實例如下:
          selenium.focus(provinceCode);
          selenium.click(provinceCode);
          selenium.select(provinceCode,label='Beijing');
          selenium.focus(cityCode);
          selenium.click(cityCode);
          selenium.select(cityCode,label='Beijing');
            可感覺這種方式畢竟繁瑣,不知道有沒有更好的方法可以直接觸發(fā)事件,直接通過select進行操作。其間我還看到了這篇文章http://blog.csdn.net/honglei915/archive/2009/11/16/4815513.aspx,可是沒有成功,不知道是不是我用的框架沒有繼承SeleniumTestCase。因為我們的框架是結(jié)合TestNG,通過@Factory和@Test標(biāo)注進行測試Case文件解析,文件以htm形式存在,將tr/td標(biāo)簽解析為selenium可執(zhí)行的命令執(zhí)行自動化操作。如果大家有什么好的辦法請留言告訴我吧,謝謝!
            其次就是對頁面上js事件的處理,現(xiàn)在我能想到的就是用fireEvent()這個API。一個參數(shù)是要觸發(fā)這個js的控件的xpath,另一個參數(shù)就是要觸發(fā)的事件, 大家給的建議一般都是blur或focus,可嘗試了很多次都沒有成功。不知大家有沒有更好的方法?或者了解這個API的大蝦能不能給具體講講,為啥用blur/focus,這倆有什么區(qū)別?還有沒有什么其他event可以用呢?謝謝!

          posted on 2014-02-28 10:52 順其自然EVO 閱讀(2863) 評論(0)  編輯  收藏 所屬分類: selenium and watir webdrivers 自動化測試學(xué)習(xí)

          <2014年2月>
          2627282930311
          2345678
          9101112131415
          16171819202122
          2324252627281
          2345678

          導(dǎo)航

          統(tǒng)計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 介休市| 冷水江市| 连山| 丹东市| 湄潭县| 河津市| 聊城市| 八宿县| 读书| 曲麻莱县| 嵩明县| 金阳县| 灌南县| 台江县| 武城县| 古浪县| 平阴县| 剑河县| 榆社县| 舞钢市| 延安市| 都安| 珲春市| 招远市| 舞阳县| 金乡县| 新蔡县| 新安县| 彭山县| 巫溪县| 宣汉县| 平邑县| 成武县| 将乐县| 广宗县| 马龙县| 连城县| 乌兰浩特市| 襄樊市| 彭泽县| 抚宁县|