網購 “砍價” 引發的思考:為什麼要做介面測試?
我們做功能測試難道不香嗎?為什麼還要去做介面測試呢?
第一個,它可以發現頁面上發現不了的BUG,什麼是頁面上發現不了的BUG呢?
給大家舉一個例子,比如說我們都喜歡去淘寶買衣服,你買了衣服一般都會去和商家去砍價,能不能送些什麼小禮品,包個郵之類的。
那麼在這裡商家不同意的話,要麼我就買了,要麼我就乾脆不買了,或者換一家。在這個下單的過程中間,我們能不能去更改下單的價格?我們是改不了的,對不對?就說說商家定了多少價格,你要去買,支付的話就必須支付標定的價格。
但是如果說,我們通過介面的方式去傳遞我們的支付的介面,首先你要傳入(你要支付的錢是多少)
輸出的結果:1.是否成功2.對應的賬號上金額就要減少支付的金額(比如支付一百就是減少一百)
通過介面,把這個“錢”發過去,可以讓你自己去設定,那麼如果再這種情況下,我自己可以去設定“錢”的引數,把原本一百的改成零元,那麼在這裡
輸出的結果是不是:購買成功——對應賬號金額不變,你是賺了還是虧了?不用支付,坐等收快遞。
舉這樣一個例子,是要說明我們通過介面可以跳過(越過)UI層面的校驗,從而可以達到UI層面測試不到的東西,我們在介面層面可以去測試。
但是像上面說(輸出結果為不用支付錢)的情況,我們允不允許它出現?是不允許它出現的,絕對不允許的,對不對?大家都這麼做的話,商家不得虧死去。
如果說我把他的錢,改成-100元,難道說你支付成功,我商家還要倒貼你100塊錢嗎?
那麼如何去避免這樣一種情況呢?
怎麼解決?
所以呢,我們在後端也會加上校驗,來避免這些非法情況的一個產生。
像我們的介面的話呢,同樣它也可以去檢測,除了UI層面可以去校驗之外,它也可以用來檢測你的後端到底有沒有校驗,如果說你的後端沒有校驗,就會出現我們前面
剛剛說的問題。(對應的就是商家利益損失,甚者公司破產)
測試是以評價一個程式或者系統屬性為目標的任何一種活動。
①這個就是第一個,介面測試可以發現很多在頁面上發現不了的BUG
②同樣呢,也可以去檢查系統的異常處理能力,其實前面說的就是一種“異常”情況。
③還有呢,檢查系統的安全性、穩定性。
④前端隨便你變化,介面測好了,後端就可以不用變了。
也就是說,我們把後端的一些介面都測試好了之後呢,不管你的UI怎麼去測,我們的後端基本上就不要變了。
因為什麼?剛剛我們講了,這個介面的測試它是不是也可以去檢驗你的後端有沒有校驗,你的後端是不是有什麼漏洞,對不對。既然它可以去發現後端的一些問題,我們介面測試好了,那麼後端的問題是不是基本都已經改了,我們後端就不用變了。前端的這個UI你想怎麼變就怎麼變,對我沒有影響了。
⑤介面可以更早的介入我們的測試,如果說我們只是做功能或者UI測試的話,我們是不是一定得要等這個系統已經做好了並且已經部署好了之後,我們才能夠進行?
因為這個東西沒出來的話,你怎麼去做功能測試,怎麼去輸入資料,怎麼去得出結果去判斷這功能是不是正確的。
但是我們在介面測試的時候,你這個系統的介面沒有完全做出來,我們也可以去做測試,只要你後臺的一些介面呼叫已經是OK的,那麼我們就可以去進行介面測試。
這就相當於比我們的功能測試要提前介入了一定的時間,既然可以提前介入進行介面測試的話,是不是在一定程度上保證了我們系統的穩定性?
《軟體測試的藝術》測試儘量早的介入,儘量早的發現這些明顯的或隱藏的bug,發現得越早,修復起來的成本越低,產生的風險也越小
隨著軟體測試理論的成熟,現階段的軟體測試已經發展到相對成熟的一個層次。而業內人士都知道,對於一款軟體,軟體測試介入的越早,對軟體失效或軟體錯誤的修復成本也就越小。最近對這個理論作了個深入的瞭解,忽然發現一個問題:似乎這世界上很多事情(幾乎是我知道的所有)都是這樣的——越早修復錯誤,花費的成本越少。一個謊言要用一千個謊言來彌補,電影《蝴蝶效應》說的就是有關一個小錯誤引發的一連串的反應。
也許,開發過程中一個小小的分號,都能毀掉上億的專案……
所以說,以上都是我們做介面測試的好處,這也是為什麼企業裡面越來越重視介面測試,不是沒有理由的。
它既可以更早的介入測試,節約企業成本。還可以發現我們頁面上發現不了的BUG,還可以提高我們系統的穩定性,檢查我們後端存在的一些問題,這麼好的東西!為什麼不去用呢?
軟體測試的原則:
參考文獻:
引用:《軟體測試的藝術》測試儘量早的介入,儘量早的發現這些明顯的或隱藏的bug,發現得越早,修復起來的成本越低,產生的風險也越小
引用:Bill Hetzel在《軟體測試完全指南》(Complete Guide of Software Testing)一書中指出:“測試是以評價一個程式或者系統屬性為目標的任何一種活動。
微信搜一搜【程式設計師一凡】關注這個文縐縐的程式設計師,關注後回覆【面試】有我準備的一線大廠面試資料和簡歷模板,希望大家都能找到心儀的工作,學習是一條時而鬱鬱寡歡,時而開懷大笑的路,加油。如果你通過努力成功進入到了心儀的公司,一定不要懈怠放鬆,職場成長和新技術學習一樣,不進則退。如果有幸我們江湖再見!
相關文章
- 介面測試的價值(為什麼要做介面測試)
- 為什麼要做介面測試?怎麼做?
- 為什麼要做介面測試?可做介面測試的軟體測試公司分享
- ? python 介面自動化 (二)--什麼是介面測試、為什麼要做介面測試 (詳解)Python
- 既然測試地位不高,為什麼你還要做測試?
- 軟體產品為什麼要做壓力測試?
- 介面測試要測試什麼?
- 軟體為什麼要做異常測試?測試員必知的22個測試點總結!
- 什麼是介面測試?
- 軟體測試為什麼要做測試需求分析?專業的軟體測評公司有哪些?
- 介面測試是什麼?如何做好介面測試?
- 測試雜談——一條SQL引發的思考SQL
- 介面測試 - 引數測試
- 我為什麼要做IT
- 網站為什麼要做“等保”?怎麼做?網站
- 軟體產品為什麼要做壓力測試?壓力測試報告如何獲取?測試報告
- 關於測試工程師 知道自己要做什麼工程師
- 網站建設之企業為什麼要做網站?網站
- MES引發資訊部門的價值思考
- 介面測試關注點是什麼?
- 內網是什麼意思?指什麼網?內網需要做等保測評嗎?內網
- 為什麼要做聚合支付代理?
- 為什麼要做Redis分割槽?Redis
- 軟體介面測試有什麼作用?可做介面測試的外包公司安利
- 為什麼為什麼為什麼為什麼為什麼你要做一名程式設計師?程式設計師
- 【測試】要做的事
- 何時需要做urlEncode,以及為什麼要做
- 一種測試方向的探討-基於模型測試調研引發的思考-1模型
- 一種測試方向的探討-基於模型測試調研引發的思考-4模型
- 為什麼業務天天問技術你的技術產生什麼業務價值?可以到測試這邊為什麼天天覺得業務測試沒技術含量?
- 【等保小知識】內網或專網需要做等保測評嗎?為什麼?內網
- 介面級整合測試怎麼寫,怎麼體現價值
- 介面測試-引數校驗
- 為什麼要做程式碼審計?
- 問題驅動一:“網際網路架構為什麼要做服務化”問題記錄與思考架構
- 軟體產品為什麼要做安全測試?如何尋找靠譜的第三方軟體測試機構?
- 剛接觸介面測試,問下各位大佬,做介面測試時非必填項引數需要做異常測試嗎?比如一個 id 引數為非必傳,我把 key 值改為 idd 這樣發起請求,因為是非必傳引數介面是正常返回還是應該報錯
- 政府網站為什麼要做IPv6升級改造?網站