python+uiautomation Windows端界面自動化測試


一、在web系統GUI自動化測試中,可以用uiautomation進行輔助

二、程序窗口:WindowControl()

  按鈕:ButtonControl()

  文本顯示:TextControl()(可用於斷言)

  輸入框:EditControl()

三、一般定位的屬性有:ClassName、Name、ProcessId、AutomationId

四、實現代碼如下:

復制代碼
import os
import subprocess
import uiautomation
import time
#打開計算器進程
subprocess.Popen('calc.exe')
time.sleep(2)
#定位窗口
wc=uiautomation.WindowControl(searchDepth=1,Name='計算器')
#設置為頂層
wc.SetTopmost(True)
wc.ButtonControl(Name='7').Click()
wc.ButtonControl(Name='加').Click()
wc.ButtonControl(Name='5').Click()
wc.ButtonControl(Name='等於').Click()
result=wc.TextControl(AutomationId='158')
print(result.Name)
if result.Name=="12":
    print("測試成功")
else:
    print("測試失敗")
#截圖
wc.CaptureToImage('1.png')
time.sleep(2)
wc.ButtonControl(Name='關閉').Click()
os.system("taskkill /F /IM calc.exe")
復制代碼
復制代碼
import uiautomation
import time
uiautomation.RightClick(1405,361)
uiautomation.Click(1468,37)
wc=uiautomation.WindowControl(searchDepth=1,Name='yx')
wc.SetTopmost(True)
edit=uiautomation.EditControl(ProcessId='764(QQ)')
for i in range(10):
    edit.Click()
    edit.SendKeys('在干嘛啊')
    wc.ButtonControl(Name='發送(&S)').Click()
    time.sleep(3)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM