国产精品视频一区二区三区四,亚洲av美洲av综合av,99国内精品久久久久久久,欧美电影一区二区三区电影

產(chǎn)品推薦:氣相|液相|光譜|質(zhì)譜|電化學(xué)|元素分析|水分測定儀|樣品前處理|試驗機|培養(yǎng)箱


化工儀器網(wǎng)>技術(shù)中心>技術(shù)參數(shù)>正文

歡迎聯(lián)系我

有什么可以幫您? 在線咨詢

自動化之UI(autoit)

來源:金湖辛德瑞自動化設(shè)備有限公司   2019年07月17日 09:07  

一.自動化

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

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

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

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

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

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

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

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

 

二.AutoIT范例

首先介紹下AutoIt常用的兩個菜單項,如下圖:

1.幫助文檔

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

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

案例腳本如下:

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

 

三. AutoIt支持其他語言

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++,同時也支持java,VB, Delphi, C等 。

均可以在以上語言開發(fā)的同時嵌入Autoit。

 

四.備注

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

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

做自動化或者說測試,個人感覺需要培養(yǎng)一種思路,而不是說會去用種工具就可以了。

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

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

免責(zé)聲明

  • 凡本網(wǎng)注明“來源:化工儀器網(wǎng)”的所有作品,均為浙江興旺寶明通網(wǎng)絡(luò)有限公司-化工儀器網(wǎng)合法擁有版權(quán)或有權(quán)使用的作品,未經(jīng)本網(wǎng)授權(quán)不得轉(zhuǎn)載、摘編或利用其它方式使用上述作品。已經(jīng)本網(wǎng)授權(quán)使用作品的,應(yīng)在授權(quán)范圍內(nèi)使用,并注明“來源:化工儀器網(wǎng)”。違反上述聲明者,本網(wǎng)將追究其相關(guān)法律責(zé)任。
  • 本網(wǎng)轉(zhuǎn)載并注明自其他來源(非化工儀器網(wǎng))的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點和對其真實性負責(zé),不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品第一來源,并自負版權(quán)等法律責(zé)任。
  • 如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
企業(yè)未開通此功能
詳詢客服 : 0571-87858618
沈丘县| 双流县| 溆浦县| 龙岩市| 丰台区| 桐乡市| 文登市| 共和县| 娱乐| 桦甸市| 尚义县| 黔西县| 会昌县| 武清区| 北流市| 孝义市| 马龙县| 五河县| 葵青区| 泗阳县| 汾阳市| 自治县| 黑山县| 同德县| 山丹县| 石家庄市| 嘉鱼县| 荔波县| 沧州市| 松桃| 长子县| 本溪| 高邮市| 绥芬河市| 老河口市| 富锦市| 久治县| 沂南县| 正蓝旗| 宁强县| 柘城县|