2
我正在使用Squish框架編寫Qt應用程序的自動測試腳本。 Spy在Squish IDE中可以查看由「間諜選擇器」選擇的Qt Widget的屬性和方法。在窺視透視啓用窗口 - >顯示視圖 - >方法。如何從Squish測試腳本獲取Qt對象的方法簽名?
我可以在Methods視圖中看到類似void setParent(QObject*)
- 方法名稱,返回值和參數類型。
在用Python測試腳本運行時我可以從Python中獲得控件屬性,例如isActiveWindow -> true
,通過調用
aWidget = waitForObject("...")
aMap = object.properties(aWidget)
的Widget方法可用,比如我可以打電話:
>>> aWidget.isModal()
0
但如何獲取小部件方法簽名的列表,如IDE中的Methods視圖中所示?所有我想出的是
>>> dir(this)
['BackButtonPressed', 'ButtonPressed', ...
但當然它只列出方法名稱不簽名,沒有聲明的參數類型或返回類型。間諜以某種方式獲取簽名,我怎樣才能從Python運行它們?