2012-01-23 36 views
2

有人可以解釋assert和verify之間的差別嗎?在Selenium中聲明並驗證

我知道驗證意味着它檢查它是否存在,如果它不是測試失敗並在那裏停止(正確?)。

即使它確實失敗,斷言繼續嗎?

我已閱讀文檔,仍然無法讓我的頭圍繞它。

+0

[此鏈接可能有幫助](http://software-testing-tutorials-automation.blogspot.in/2012/11/different-between-verifytext-and.html) –

回答

4

不,你已經倒過來了。在Selenium IDE中,verifyWhateverassertWhatever命令確定指定的條件是否爲真,然後發生不同的事情。如果條件爲假,則assertWhatever命令立即失敗。命令verifywhatever允許測試繼續,但會導致測試結束時失敗。因此,如果您的測試要求您檢查是否存在多件物品,其中沒有一件存在,則assertElementPresent將首先失敗,而verifyElementPresent將失敗,報告缺少所有物品。

verifyWhatever的缺陷在於,在其中一項驗證失敗後,您確實無法相信任何測試的行爲。由於應用程序沒有正確響應,因此無法知道後續的斷言或驗證失敗是否有效,或者是之前失敗的結果。因此,我們中的一些人認爲verifyWhatever命令是邪惡的。

+0

請注意,這是真實的,例如, 'verifyElementPresent',但對於'verifyText'不是true。如果後者錯誤,硒立即通過測試。 –