1
如果我的測試失敗,是否可以採取某種措施? 我有一個測試,使用硒/ fluentlinium來填充文本/點擊按鈕並聲明結果。我希望在測試條件失敗時能夠採取行動。像下面specs2-對測試失敗採取措施
class TestSpecial extends Specification{
"Website should" {
"do the right thing" in new WithBrowser(webDriver = WebDriverFactory(FIREFOX)){
browser.$(".xyz1").text("a")
browser.$(".xyz2").click()
browser.$(".xyz3").getText must equalTo("foo")
browser.$(".xyz1").text("b")
browser.$(".xyz2").click()
browser.$(".xyz3").getText must equalTo("bar")
}
onFailure
{
//context remains same, so I can use browser
MySnapshotFunction.takeSnapshot(browser)
}
}
}
有沒有一種方法,使失敗的測試扔,這樣我可以在catch塊拍攝快照?
我想一個方法是使用中給出的建議是:
How to do setup/teardown in specs2 when using "in new WithApplication"
創建標記每個測試的失敗啓動前,要求執行的用戶,以紀念我自己的「WithBrowser」自定義實現在測試塊結束時通過的測試。在拆解代碼中的自定義實現需要一個快照。我已經着眼於使用這種方法,但會歡迎任何更好/更簡單的解決方案。