2009-06-03 67 views
16

在帶有驅動GUI的端到端測試的項目中,由於GUI自動化驅動程序干擾桌面,因此在開發人員工作站上運行測試很尷尬。它移動鼠標,將焦點從我們想要使用的應用程序中解放出來,並且如果我們在測試運行期間切換到另一個應用程序,就可以開始在錯誤的應用程序中輸入文本。有什麼像Windows的xvfb或xnest?

在Linux上,我們通過在虛擬X服務器(xvfb或xnest)上運行待測應用程序來解決此問題。使用xnest,我們可以觀察測試運行,但仍然可以使用真實的桌面而不受干擾。

Windows有什麼等價物嗎?

回答

5

我發現了一個名爲「RunProcess.exe」的免費軟件程序,由Frank P. Westlake編寫,可以運行綁定到非交互式(例如屏幕外)WindowStation桌面的進程。但是,沒有來源。

因此,我用Java和JNA實現了自己的版本(比Frank Westlake簡單)。它位於工具模塊的Window Licker存儲庫中。該課程名爲com.objogate.wl.win32.RunOnDesktop。在某些時候,我可能會將它移植到C,並將其設置爲正常的命令行.exe,或者將它轉換爲Ant任務,以便在屏幕外運行測試。

+0

任何人的了 – 2014-08-20 07:10:49

+0

我試圖找到同樣的問題的解決方案,有沒有人嘗試過嗎? – DamianS1987 2015-07-02 11:46:37

+0

鍵盤和鼠標的問題,關閉屏幕@Nat? – gumuruh 2016-09-27 02:17:10

5

您可以使用SysInternals軟件包中的「Desktops」應用程序。在一個桌面上運行UI測試並在另一個桌面上工作。

0

我剛剛在我的Windows 10機器上嘗試了多種桌面方法。我正在運行Selenium Javascript測試。我在另一臺桌面上開始測試,等待它打開瀏覽器,然後切換回我的主桌面。但同時地步Chrome瀏覽器將成爲活動窗口,現在它實際上迫使我回到了那個桌面:-(

我想我會嘗試RunProcess.exe,或NAT的解決方案。