0
我開始使用Behave來實現一些測試。我想替換一些現有的單元測試(這是更多的功能測試)。其中一些使用assertRaises來檢查對後端服務的某些調用是否會引發他們應該發生的錯誤。有沒有可能在Behave中有類似的東西(或者可能是小黃瓜)?python可以處理assertRaises
以下unittest調用我的後端服務,並且在guest虛擬機已登錄時無法執行管理任務(do_admin_task)。它應該引發一個例外。
def test_mycall(self):
service = myservice('guest', 'pwd')
self.assertRaises(NoPermission, service.do_admin_task, some_param)
在我的功能文件中,我將如何創建我的場景?喜歡這個?
scenario: test guest can't do an admin task
given I log on to my service as guest/pwd
when I try to perform my admin task
then it should fail saying NoPermission
我認爲,這將提高已經在當一步一個例外,所以甚至不會給然後一步。
我可以想象的一種潛在方式是創建一個執行這兩個步驟並執行異常處理的特定步驟。如果我想要在低級調用中嘲諷錯誤,那麼我將不得不重寫這些步驟中的很多步驟,這正是我希望通過切換到Behave而避免的。
我該如何解決這個問題?
謝謝,這是一個清晰簡明的答案。 – Baire