![](/img/trans.png)
[英]How can I verify the state of a WPF checkbox during a UI Automation Unit Test using the Windows Application Driver?
[英]Test Automation of WPF Application
我們正在開發與服務器交互的新WPF應用程序。 該應用程序向服務器發送請求並獲得響應。 在不同的視圖中以不同的方式顯示響應(即具有多個視圖的單個模型)。
現在我們要自動化WPF應用程序的測試。 我有以下測試自動化需求:
請讓我知道如何使用任何Test自動化工具實現以上目標。
您描述的此功能稱為“記錄和播放”。 正如您已經提到的,它僅限於簡單的UI交互,並且很難維護。
一旦您的交互邏輯變得更加復雜,您將必須通過使用更分層的體系結構來手動實現測試用例邏輯的主要部分。 一種可能的體系結構可能具有以下幾層(此處的某些思想摘自《 持續交付:通過構建,測試和部署自動化進行可靠的軟件發布 》一書)
最低層將實現對UI控件本身的訪問(例如,通過使用您提到的UI測試API之一)。
應用程序驅動程序層,描述您的應用程序的功能。 在這里,您可以使用類似LoginForm.LoginUser(userName,passWord)
。 在內部,此方法可以例如處理完整的用戶輸入,按所有必需的按鈕,甚至在需要時進行一些其他驗證(例如,如果密碼已過期並且必須重新輸入)。 該層中的方法將通過較低層訪問不同的UI控件。 通常,此層是您正在測試的應用程序的抽象。
用例/測試用例層。 在這里,您可以通過調用應用程序層來定義不同的測試步驟。
因此,在您的具體情況下,您可以在應用程序驅動程序層中擁有一個名為ClientSoftware
的類,並且該類可以具有ValidateUserInput
或SendRequestToServer
類的方法。 然后,這些方法將實現必要的UI交互以執行所需的行為。 然后,在測試用例本身中,您將必須設置ClientSoftware
的實例並調用所需的方法來實現您的測試用例。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.