狠狠色丁香久久综合婷婷亚洲成人福利在线-欧美日韩在线观看免费-国产99久久久久久免费看-国产欧美在线一区二区三区-欧美精品一区二区三区免费观看-国内精品99亚洲免费高清

            | 注冊(cè)| 產(chǎn)品展廳| 收藏該商鋪

            行業(yè)產(chǎn)品

            當(dāng)前位置:
            金湖辛德瑞自動(dòng)化設(shè)備有限公司>>技術(shù)文章>>自動(dòng)化之UI(autoit)

            產(chǎn)品分類(lèi)品牌分類(lèi)

            更多分類(lèi)

            自動(dòng)化之UI(autoit)

            閱讀:855        發(fā)布時(shí)間:2019-7-17

            一.自動(dòng)化

            說(shuō)到自動(dòng)化,我真的很不喜歡UI這層去做實(shí)踐。前置條件要求比較嚴(yán)謹(jǐn),如果不滿足特定的前置條件,那么成本實(shí)在太大了。

            投入與產(chǎn)出差過(guò)大,效果打折扣。從互聯(lián)網(wǎng)來(lái)說(shuō),UI自動(dòng)化是入門(mén)門(mén)檻很低的一種實(shí)踐,但是互聯(lián)網(wǎng)能滿足這種前置條件的產(chǎn)品感覺(jué)并不多。

            其一:它需要產(chǎn)品是維穩(wěn)的,即變動(dòng)不是非常的大。

            其二:對(duì)于元素會(huì)有一定的要求,比如web,那么對(duì)html的頁(yè)面元素就會(huì)希望開(kāi)發(fā)能規(guī)范ID或者class等;對(duì)于PC應(yīng)用,也則需要有可識(shí)別的ID,包括移動(dòng)APP也是。

            常見(jiàn)使用的工具一般集合在:selenium/uiautomation/appium/monkey等,早之前還有QTP。

            我早練手是使用的QTP,后面陸陸續(xù)續(xù)也用過(guò)一些其他的,比如web自動(dòng)化還做了瀏覽器js插件去適配測(cè)試。

            后面,有接收到任務(wù)要求做PC應(yīng)用程序的自動(dòng)化,當(dāng)時(shí)認(rèn)為QTP太大了,而且需要破解等比較麻煩,就改用了AutoIT工具去實(shí)現(xiàn)。

            AutoIT這款工具,大部分是被用來(lái)做游戲外掛的,所以想做外掛的人不要局限于按鍵精靈。

             

            二.AutoIT范例

            首先介紹下AutoIt常用的兩個(gè)菜單項(xiàng),如下圖:

            1.幫助文檔

            2.autoit window info分為32位系統(tǒng)識(shí)別和64位系統(tǒng)識(shí)別,識(shí)別程序應(yīng)用的元素。類(lèi)似于selenium抓取的html元素,又類(lèi)似于uiautomationview這個(gè)。

            識(shí)別元素界面打開(kāi)如下:請(qǐng)記住紅色圈圈內(nèi)圖標(biāo)。抓取元素就是靠點(diǎn)擊該按鈕不放手拖動(dòng)到你需要的產(chǎn)品上去識(shí)別。粉紅部分就是抓取到的信息

            案例腳本如下:

            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            #cs對(duì)計(jì)算器進(jìn)行自動(dòng)化測(cè)試自動(dòng)計(jì)算4+5=9結(jié)束后關(guān)閉計(jì)算器窗口#ceCalc()Func Calc()   Local $time=2000;   ;運(yùn)行計(jì)算器   Run("calc.exe");   ; 等待1s,計(jì)算器窗口出現(xiàn)   Local $hWnd = WinWait("[CLASS:CalcFrame]", "", 1)   ;激活該窗口,即將光標(biāo)定位到該窗口   WinActivate("[CLASS:CalcFrame]");   ;點(diǎn)擊4   ControlClick($hWnd, "", "Button4");   ; 等待2s觀察效果.    Sleep($time);   ;點(diǎn)擊+   ControlClick($hWnd, "", "Button23");   Sleep($time);   ;點(diǎn)擊5   ControlClick($hWnd, "", "Button10");   Sleep($time);   ;點(diǎn)擊=   ControlClick($hWnd, "", "Button28");   Sleep($time);   WinClose("[CLASS:CalcFrame]");EndFunc   ;==>Calc

             

            三. AutoIt支持其他語(yǔ)言

            AutoIt支持VBScript腳本,范例如下

            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            •  
            '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Example WSH Script (VBScript)'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Require Variants to be declared before usedOption Explicit''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Declare Variables & Objects''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''Dim oShellDim oAutoIt''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Initialise Variables & Objects''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''Set oShell = WScript.CreateObject("WScript.Shell")Set oAutoIt = WScript.CreateObject("AutoItX3.Control")''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Start of Script''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''WScript.Echo "This script will run some test calculations"oShell.Run "calc.exe", 1, FALSE' Wait for the calc window to become activeoAutoIt.WinWaitActive "Calculator", ""' Send some keystokes to calcoAutoIt.Send "2*2="oAutoIt.Sleep 500oAutoIt.Send "4*4="oAutoIt.Sleep 500oAutoIt.Send "8*8="oAutoIt.Sleep 500oAutoIt.WinClose "Calc", ""oAutoIt.WinWaitClose "Calc", ""WScript.Quit

            AutoIt支持C++,同時(shí)也支持java,VB, Delphi, C等 。

            均可以在以上語(yǔ)言開(kāi)發(fā)的同時(shí)嵌入Autoit。

             

            四.備注

            以上腳本適用于win32標(biāo)準(zhǔn)控件框架,當(dāng)你的框架并非win32標(biāo)準(zhǔn)時(shí),可以使用autoit走相對(duì)坐標(biāo)去實(shí)現(xiàn)或者使用sikuli去實(shí)現(xiàn),總之,自動(dòng)化是應(yīng)產(chǎn)品而選擇方案的。

            詳細(xì)腳本就不解釋了,可以參考手冊(cè),手冊(cè)內(nèi)有非常多的案例。

            做自動(dòng)化或者說(shuō)測(cè)試,個(gè)人感覺(jué)需要培養(yǎng)一種思路,而不是說(shuō)會(huì)去用種工具就可以了。

            同時(shí),希望有志于往測(cè)試發(fā)展的人,還是希望至少能熟悉一種語(yǔ)言,這真的是優(yōu)勢(shì),熟悉語(yǔ)言也可以為工作提供不少的幫助。

            文章寫(xiě)的這些僅僅只是入門(mén)的一種,其實(shí)需要培養(yǎng)的思路是有助于去做一些框架的架設(shè)等事情,其實(shí)可以去熟悉下微軟的SDTE。

            收藏該商鋪

            請(qǐng) 登錄 后再收藏

            提示

            您的留言已提交成功!我們將在第一時(shí)間回復(fù)您~
            二維碼 意見(jiàn)反饋
            在線留言