亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測(cè)試 > 開源軟件測(cè)試 > 開源功能測(cè)試工具 >
Web 測(cè)試實(shí)踐 for .Net ?WatiN
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2013/12/5 13:51:43 ] 推薦標(biāo)簽:

2、對(duì)于alert 、confirm 等javascript彈出的窗口的捕獲。

背景:一個(gè)系統(tǒng)經(jīng)常會(huì)使用以上這些javascript來彈出一些提示信息,如果捕獲這些窗口,并模擬用戶點(diǎn)擊這些窗口上的OK或Cancel按鈕?

方案:其實(shí)WatiN在默認(rèn)情況下,都會(huì)自動(dòng)地去點(diǎn)擊這些彈出式窗口上的Cancel按鈕的,但如果用戶要明確點(diǎn)擊哪些事件的話可以對(duì)IE對(duì)象增加一個(gè)“查看器”()

//錯(cuò)誤事例
        protected void f()
        {
            WatiN.Core.DialogHandlers.ConfirmDialogHandler dh = new WatiN.Core.DialogHandlers.ConfirmDialogHandler();

            ie.AddDialogHandler(dh);//這句增加了一個(gè)控制器
            /**/
            /*
                 假設(shè)yzp_dic_btn_cls這個(gè)按鈕的onclick事件會(huì)用JS彈出一個(gè)Confirm窗口。
                 錯(cuò)誤,測(cè)會(huì)在這里彈出一個(gè)窗口,然后等待用戶進(jìn)行操作(隨便點(diǎn)擊一個(gè)按鈕才繼續(xù)執(zhí)行)
                 然后因?yàn)橛脩粢呀?jīng)點(diǎn)擊了按鈕關(guān)閉 彈出窗口。下一句的dh.WaitUntilExists(3);將會(huì)超時(shí),拋出異常
                 */
            doc.Button(Find.ByName("yzp_dic_btn_cls")).Click();
            dh.WaitUntilExists(3);//等待彈出窗口的出來。多等三秒。
            dh.OKButton.Click();//點(diǎn)擊這個(gè)窗口的OK按鈕
            ie.RemoveDialogHandler(dh);
            doc.Button(Find.ByName("btn_close")).Click();
        }

正確的示例應(yīng)該是:

protected void f()
        {
            WatiN.Core.DialogHandlers.ConfirmDialogHandler dh = new WatiN.Core.DialogHandlers.ConfirmDialogHandler();

            ie.AddDialogHandler(dh);
            doc.Button(Find.ByName("yzp_dic_btn_cls")).ClickNoWait();//把原來的Click改成這個(gè)方法。
            dh.WaitUntilExists(3);//等待彈出窗口的出來。多等三秒。
            dh.OKButton.Click();//點(diǎn)擊這個(gè)窗口的OK按鈕
            ie.RemoveDialogHandler(dh);
            doc.Button(Find.ByName("btn_close")).Click();
        }

3、關(guān)于用JS彈出的Modal窗口(模式窗口)的處理.

背景:有些地方需要彈出模式窗口來處理數(shù)據(jù)。

方解:當(dāng)點(diǎn)擊了彈出模式窗口的按鈕或連接后馬上用IE對(duì)像的HtmlDialogs屬生來獲取模式窗口。

         protected void f()
        {
            //假設(shè)下面這行代碼會(huì)彈出一個(gè)模式窗口把原來的Click改成這個(gè)方法。
            //記住這里要用ClickNoWait而不能用Click,否則在模式窗口關(guān)閉之前代碼不會(huì)繼續(xù)執(zhí)行。
            ie.Button(Find.ByName("yzp_dic_btn_cls")).ClickNoWait();
            ie.HtmlDialogs[ie.HtmlDialogs.Length - 1].TextField(Find.ByName("Q")).Value = "Hello";
            ie.HtmlDialogs[ie.HtmlDialogs.Length - 1].Button(Find.ByName("btn_query")).Click();
        }

總結(jié)

這個(gè)框架還是比較簡單,主要要主意的事情是HTML元素的Click與ClickNoWait方法的區(qū)別。還有對(duì)于輸入框,是直接設(shè)置它的Value還是調(diào)用TypeText或AppendText方法模擬用戶手工輸入內(nèi)容。前者不會(huì)激發(fā)該控件的任何JS事件,而后者會(huì)激KeyDown、KeyUP等事件。

上一頁123下一頁
軟件測(cè)試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請(qǐng)使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 三级网址日本 | 亚洲无砖砖区免费 | 男女黄色毛片 | 亚洲丶国产丶欧美一区二区三区 | 国产亚洲欧美一区二区 | 波多野结衣中文字幕一区二区三区 | 1024手机基地在线看手机 | 日韩操比 | 亚洲一区二区视频在线观看 | 国产人成精品香港三级在 | 99精品视频在线观看免费专区 | 青青草国产一区二区三区 | 伊人婷婷 | 国产xx做受视频国语对白 | 欧洲视频一区 | 嘿嘿嘿视频在线观看网站 | 曰批女人视频在线观看 | 亚洲一区二区三区免费 | 成人午夜爽爽爽免费视频 | 欧美13一14周岁a在线播放 | 国产99r视频精品免费观看 | 免费看一级a一片毛片 | 一区二区三区在线 | 日本 | 8000av在线| 日韩精品一区二区三区中文精品 | 色综合天天综合网国产成人 | 一本中文字幕一区 | 污视频网址 | 我要看免费的毛片 | 久久久亚洲欧洲日产国码二区 | 欧美国产日韩在线播放 | 国产免费又爽又黄又刺激的视频 | 午夜国产在线观看 | 亚洲黄色在线视频 | 国产午夜久久影院 | 国产精品亚洲一区二区三区久久 | 欧美在线一区二区三区不卡 | 日韩小视频在线观看 | 天天做天天摸 | 久久亚洲综合 | 亚洲91在线视频 |