qileilove

          blog已經轉移至github,大家請訪問 http://qaseven.github.io/

          使用js實現可反饋執行成功狀態的web ui自動化事件

           webdriver提供的動作執行,如點擊,有時會操作某些控件時,執行語句正常,但實際沒有觸發點擊,原因很多,一般處理方式是使用它的execute_script方法注入js來執行(強化功能的一種方式), 但同樣會存在這種情況,無法知道執行是否真的有效。
            基于js中增加一個反饋機制,可以做到對執行效果有一定程序的控制,以click為例
          return(function($,elem){
          $(elem).one("click",function(){window._action_confirm=true; });
          try{
          var evt = document.createEvent( 'MouseEvents' );
          evt.initEvent('click', true, true);
          elem.dispatchEvent(evt);
          }catch(e){
          elem.click();
          }
          var start_time = new Date().getTime();
          while(true){
          if(window._action_confirm){
          return elem;
          }
          if((new Date().getTime())-start_time > 1500){
          return null;
          }
          }
          })(jQuery,elem)
            執行的結果如果返回null,則表示js的click執行失敗(可以再次嘗試框架動作的執行),否則表示執行成功
          版權聲明:本文出自 xiadw 的51Testing軟件測試博客:http://www.51testing.com/?215196
          原創作品,轉載時請務必以超鏈接形式標明本文原始出處、作者信息和本聲明,否則將追究法律責任。

          posted on 2014-04-29 10:54 順其自然EVO 閱讀(205) 評論(0)  編輯  收藏 所屬分類: selenium and watir webdrivers 自動化測試學習

          <2014年4月>
          303112345
          6789101112
          13141516171819
          20212223242526
          27282930123
          45678910

          導航

          統計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 漯河市| 临西县| 马龙县| 新沂市| 响水县| 磴口县| 永善县| 南昌县| 贵港市| 沙湾县| 宝坻区| 白山市| 荆州市| 临朐县| 兰西县| 牡丹江市| 襄垣县| 盐山县| 潞城市| 清苑县| 呼伦贝尔市| 新沂市| 赤城县| 辉县市| 平陆县| 民勤县| 绥芬河市| 祥云县| 大洼县| 化州市| 长治县| 明溪县| 余庆县| 专栏| 寻乌县| 新宁县| 高州市| 田阳县| 九龙坡区| 图木舒克市| 昭平县|