stst
想和大家討論一下,乙個測試用例裡只做乙個斷言
還是乙個用例裡做多個相關的斷言
比如有乙個查詢函式query(id) 返回[姓名,性別,年齡]
那麼是在乙個測試用例裡對這三個屬性進行斷言好?
還是在三個測試用例裡,對每個屬性進行斷言好?
hz三個檢查乙個用例
你是希望有10個問題每次告訴你乙個人折騰10次還是一次告訴你10個折騰1次
stst
哦,但是我發現分開寫,表達力更強
你說的"折騰"當然有道理,但是犧牲了表達力
現在的討論分為兩派了,如果能各抒己見最好
我比較支援分開寫的這一派,但是也無法反駁前面一派
crs你的這3個屬性是由乙個行為獲取到的..,為嘛要寫成3個...
stst我是感覺表達力會強一些
crs那為啥不可以把這3個驗證抽成乙個方法..如果有必要抽的話
stst
如果query複雜一點,姓名,性別,年齡各自來自複雜的演算法,是不是分開就更容易表達跟蹤了
wl怎麼知道這三個屬性無相關性,三個用例單獨驗證都正確不等於一次取出時全部正確吧
stst
嗯,是的,很有見解
對這個問題可以這樣解釋
我現在對這個說法很認同
以概念本身為單元,乙個概念本身有幾個屬性,應該放一起斷言,但是不應該同時斷言幾個概念
wl同意
stst
也就是說,不能再乙個測試裡,斷言兩個概念
比如執行
insert(...)
斷言insert的結果
query()
斷言query的結果
因為insert的結果和query的結果是兩個無關的概念,不應該放乙個測試裡斷言
我是這麼理解的了
wl塞兄很擅長抽象總結,我覺得,insert和query是兩個獨立test,如果合起來那是另乙個新的test,一般是帶業務關聯的,否則沒必要放一起,放一起後測試方向也不一樣
stst
過獎過獎,喜歡瞎掰而已
嗯,這個問題再討論下去,又成了oox裡的原則問題了
單一職責:乙個模組只做一件事
用在這裡感覺也很合適:乙個測試只斷言一件事,為什麼把insert和query放乙個測試用例不好,就是因為乙個測試斷言了兩件事
lf做正確的事,而不是正確的做事
stst
嗯,而且是只作一件正確的事
vs 下的 斷言錯誤
出現 debug assertion failed錯誤 是因為你程式中的斷言失敗了,也就是這一句話 assert pactivateview this assert是system.diagnostics.debug類的乙個靜態方法,只在debug的狀態下起作用,如果程式是編譯成release的,那麼...
Jmeter斷言 響應斷言
斷言就類似loadrunner中的檢查點。對上乙個請求返回的資訊,做字串 資料報大小 html xml 等做判斷,確保返回的資訊的準確性。jmeter的斷言有好多,下面是乙個響應斷言 新建乙個執行緒組,執行緒組中新增乙個http請求 新增響應斷言 新增 斷言 響應斷言 main sample and...
JMeter斷言 響應斷言
路徑 右鍵取樣器,新增 斷言 響應斷言 注 測試字段 響應 匹配響應 如 http協議返回 200 代表成功。模式匹配規則 包括 contains 包含,可用正則。匹配 match 匹配,可用正則。相等 equals 相等,不能用正則,區分大小寫。字串 substring 也是包含,不能用正則,區分...