2016-09-23 63 views
2

我想知道更快地測試我的GUI應用程序。如何測試更快的GUI應用程序?

對於後端,我得到了一套很好的單元測試,所以我覺得這很好,我可以很快地進行迭代。

但測試前端邏輯,我發現自己跑一遍又一遍地重複同樣的事件序列,以測試邏輯的某一部分......那感覺就像我做的事情顯然是錯誤的,因爲在這裏我的迭代週期沒有我想要的那麼快。

那麼,你可以建議我一個測試GUI應用程序的好方法嗎?特別是我非常想知道如何加快我的PyQt應用程序測試周期。

回答

1

如果您只是想驗證某些GUI操作是否正確執行操作,則可以使用QTest來模擬按鈕單擊和其他GUI交互。

理想情況下,您的大部分業務邏輯都位於非GUI模塊中,以便於測試。這樣,GUI測試主要限於測試結果是否正確顯示以及按鍵是否觸發事件。

+0

感謝您的回答,我會給QTest一個機會。你說得對,業務邏輯應該完全與GUI隔離。我已經提出了一個關於[這裏]的問題(http://programmers.stackexchange.com/questions/331246/how-to-decouple-ui-from-logic-on-pyqt-qt-apps-properly) – BPL

1

也有UI黑盒測試工具,如AutoPilotSquish,讓你可以與應用程序記錄的互動和稍後再次重播他們

+0

謝謝你你的答案,我使用的窗口,所以我不知道我是否可以使用這些,無論如何,+1努力 – BPL

+0

如果AutoPilot不能在Windows上工作,我會感到驚訝,但Squish肯定會。它甚至支持測試使用Windows特定技術(如MFC)的應用程序 –

0

看起來pywinauto應該PyQt5是好的,現在(使用backend="uia"發佈2016年11月)。