2013-11-25 43 views
0

我有一個pyc模塊abc.py,它有許多類和一些類從另一個類inherting。整個文件具有通過對象/實例相互連接的類。!模擬按鈕點擊 - 處理對象/類/事件

函數調用都基於GUI按鈕點擊。所以,當按鈕被點擊時,函數會在abc.py中被調用。

我需要編寫一個腳本來完成與按鈕單擊功能完全相同的功能,但是如果沒有我單擊實際的GUI,您可以將其想象爲自動化。

問題是,單擊GUI上的按鈕時,會觸發事件,並且該按鈕與函數調用「def button_press」關聯,該函數以(self,event)作爲參數。

我將如何傳遞它自我和事件?我想使用模塊「abc.py」中的類/函數,並且模擬按鈕點擊。您可以給我一些關於如何做到這一點的指示嗎?

感謝

回答

0

您可以:

  1. 創建一個相應的事件,與你的測試數據填充它,並調用self.button_press(your_test_event),從你的GUI中。

  2. 如上,但是從你的GUI電話,app.topframe..button_press(your_test_event),外

  3. 如果事件處理程序不一樣,如果高清button_press(個體經營,EVT從事件中使用的任何數據,則=無)你可以在沒有創建事件的情況下先做a或b,

  4. 你可以使用任何一種優秀的python GUI測試工具 - 有些列出了here

0

你可能會想看看wx.PostEvent發送事件到按鈕。或者,如果你使用的wxPython 2.9.2或更高,那麼你可以使用新的UIActionSimulator,你可以讀到這裏:

我聽說過一些人誰使用sikuli進行GUI測試。還有COBRA,我一直在Python用戶組測試中作爲GUI測試工具列出,儘管我不完全確定您是否可以在wxPython應用中使用它。