日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

【转】UIAutomation

發(fā)布時間:2023/12/24 综合教程 53 生活家
生活随笔 收集整理的這篇文章主要介紹了 【转】UIAutomation 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

UIAutomation

  UIAutomation是微軟從Windows Vista開始推出的一套全新UI自動化測試技術(shù), 簡稱UIA。在最新的Windows SDK中,UIA和MSAA等其它支持UI自動化技術(shù)的組件放在一起發(fā)布,叫做Windows Automation API。

  和前面的介紹相比,我傾向于認(rèn)為UIA是一項自動化測試“技術(shù)”,而MSAA和Win32 API只是實現(xiàn)自動化測試的兩種“方法”。這里區(qū)分“技術(shù)”和 “方法”的原因是, 一項“技術(shù)”往往有獨(dú)立的模型,體貼的開發(fā)接口,用來專門解決某一類的問題,同時允許不同的實現(xiàn)細(xì)節(jié)。UIA可以被看作“技術(shù)”,是因為:

  UIA定義了全新的、針對UI自動化的接口和模式。 分別是支持對UI元素進(jìn)行遍歷和條件化查詢的TreeWalker/FindAll。定義了讀寫UI元素屬性的UIA Property, 包括Name、 ID、Type、ClassName、Location、 Visibility等等。定義了UI元素行為的UIA Pattern, 比如Select、Expand、Resize、 Check、Value等等。 還引入了UIA Event接口,可以讓測試程序在某些事件發(fā)生后得到通知,比如新窗口打開事件等。

  以往的Win32和MSAA 設(shè)計出發(fā)點并不是為解決UI自動化。Win32旨在提供的通用開發(fā)接口, MSAA旨在提供程序的多種訪問方式。相反,UIA的設(shè)計目的,以及新引入的模式和接口都完全是針對UI自動化測試的。

  在后面的文章中我們會詳細(xì)分析UIA的內(nèi)部實現(xiàn)。可以看到,UIA這一套接口和模式,可以在不同平臺,不同開發(fā)工具中實現(xiàn)和使用。其內(nèi)部實現(xiàn)方式也因地制宜, 前后的兼容性都照顧得很好。 同時,UIA提供了托管的和非托管兩種API,這些都是Win32和MSAA無法比擬的。

  下面一段簡單的C#代碼演示了如何使用UIA測試Windows自帶計算器完成計算3+5-2的操作(下述代碼可能需要修改以適應(yīng)不同Windows版本的calc.exe程序。本代碼使用Visual Studio 2008針對Windows 2008 Server R2 English 編寫)

總結(jié)

以上是生活随笔為你收集整理的【转】UIAutomation的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。