2012-05-25 39 views
0

我正在運行一系列使用Jmeter的Web服務測試,我遇到了有關斷言的幾個問題。基本上,在我的一個請求中,需要指定錯誤分類(變量$ {CLASS}),並且該請求應該返回具有指定錯誤的訂戶和設備的信息。我想斷言與其他信息一起返回的分類從不是輸入的分類。即分類=「$ {CLASS}」。我很確定我想在斷言中使用RegEx和jmeter的'not contains'選項來實現這一點,但我不太確定如何使它工作。任何幫助將不勝感激!Jmeter斷言使用用戶變量和正則表達式

+0

迂腐點,但永遠不是一個雙重否定,你的意思是真或假? –

+0

是的,我知道。這是因爲分類可能會返回非$ {CLASS}的其他錯誤級別之一,或者與$ {CLASS}一起返回,因爲請求中會返回大量信息。我只是希望分類始終等於$ {CLASS}。即分類=「$ {CLASS}」的信息僅被返回。 – MrTunaDeluxe

+0

所以如果你可以只使用一個變量作爲字符串的一部分來匹配,它會工作嗎? –

回答

0

從您的意見,我會建議使用多個斷言。如果您有多個斷言,則只有當它們全部通過時,父請求才會通過,只要任何一個斷言返回失敗狀態,它就會失敗。

例如,你可以有一個返回通過狀態,如果它發現「小」,然後另一個返回通過,如果它沒有找到「主要」。如果通過選中未選中複選框的模式匹配規則CONTAINS找到文本,然後僅包含要作爲要測試的模式不存在的文本,則指定斷言將失敗。

你也可以在同一個斷言中有多個文本字符串,但是像這樣他們將全部使用相同的範圍和模式匹配規則。

+0

謝謝你的答案。然而,當它被設置爲不包含響應斷言時,我得到了一個負面預測表達式「classification =(?!」$ {CLASS})「」,這樣,如果分類的值從minor變爲多個斷言不需要改變。 – MrTunaDeluxe