開發者在搭建介面自動化測試框架時,又或者在開發介面自動化控制的機械人時,往往需要對介面進行自動化的程式控制。而現在公司內部使用的杜爾自動化框架,就是乙個封裝了介面自動化控制邏輯的程式框架。基於該框架,開發者可以輕鬆、快速的控制各類程式的介面,這些介面可以包含 windows 介面、瀏覽器介面。
五年前曾經寫過一篇關於自動化測試的框架的文章:《搭建 wpf 上的 ui 自動化測試框架》。杜爾自動化框架,也是基於類似的技術,今天整理一下這個框架所使用的技術,在這裡和大家簡單分享一下。
杜爾的架構如下圖所示:
對圖中的所涉及技術,簡單介紹如下:
最底層平台,是 windows 平台,我們的框架只考慮該平台介面的自動化。
最上層,是框架的使用者、客戶端,目前這個框架會整合在我公司的另乙個智慧型客戶端 vica (vat intelligent client assistant)中。
再往下,就是 duir: dben ui robot framework,中文名:杜爾機械人框架。
杜爾框架主要分為兩層:下層是對 windows 下各類普通控制項的查詢、定位、封裝;上層則是基於部分常見的場景,使用下層的控制項來實現的各類場景邏輯的封裝。其核心,自然是底層的控制項封裝。該層的實現,主要依賴三類技術:
直接使用控制代碼、訊息機制等底層 windows 機制來實現控制的控制。
使用 ui automation for managed code 來實現控制項自動化。
使用 vstt(visual studio testing tool)& rpf 框架來實現控制項自動化以及錄製功能。
第 1 項技術:控制代碼、訊息機制,很常見,在此不贅述。
第 2、3 兩項技術,都主要依賴於底層的 windows automation api,該技術是整個體系的核心。介紹如下:
詳情,見:《windows automation api: ui automation》。
再回過頭來看 ui automation for managed code,這是 ui automation 的託管**框架。詳見:《ui automation for managed code》。
另外,圖中的 vstt,全稱為 visual studio testing tool。是 visual studio 中 coded ui test 框架的基礎框架。其使用託管**構建,基於下層的 rpf 框架構建。通過使用 vstt,使得我們可以以一種更加簡單的 api、更加易用的託管**,並配合更加方便使用的工具來實現 ui 自動化。詳見:《introduction to record and playback engine in vstt 2010》。
目前,雖然 duir 支援 win32、uia、vstt,但是大部分的場景,都會直接基於 vstt 來實現。只有少量 vstt 無法實現的情況下,我們才會使用另外兩個技術來實現,並封裝在 duir 內部。
DUIR Framework 相關技術介紹
開發者在搭建介面自動化測試框架時,又或者在開發介面自動化控制的機械人時,往往需要對介面進行自動化的程式控制。而現在公司內部使用的杜爾自動化框架,就是乙個封裝了介面自動化控制邏輯的程式框架。基於該框架,開發者可以輕鬆 快速的控制各類程式的介面,這些介面可以包含 windows 介面 瀏覽器介面。五年前...
const相關,指標相關,陣列相關
include include head.h int a 3,c 2 const int b a b 8 error b c right const用來修飾指標所指向的變數,還是指標 可以修改指標指向位址,但不能直接修改指向內容 int const b a b 8 right p error con...
自相關互相關卷積的 自相關與互相關
自相關 autocorrelation 也叫序列相關,是乙個訊號與其自身在不同時間點的互相關。非正式地來說,自相關是對同一訊號在不同時間的兩次觀察,通過對比來評判兩者的相似程度。自相關函式就是訊號x t 和它的時移訊號x t 的乘積平均值。它是時移變數 的函式。這是從書上抄來的話,到底是什麼意思呢?...