軟件測試工程師屬于企業的軟件質量保衛者,近年來隨著軟件測試行業的高速發展,擔任越來越重要的角色,使得許多小伙伴選擇參加軟件測試培訓,進入軟件測試行業,想要從事軟件測試工作,就必然要掌握軟件測試的一些基本方法和技能,今天八維職業學校和大家一起來看看軟件測試工程師怎么開展服務端測試,希望對想要學習和了解軟件測試工程師這個行業的同學有所幫助。

隨著互聯網產品的不斷發展,降低前端與后端的耦合度,便于產品功能的快速更新、迭代,對測試來說,為適應這種變化,不可避免的要進行服務端部分的測試,那么什么樣的需求適合進行服務端測試?服務端的測試工作分哪些部分?服務端測試又如何開展呢?
什么樣的需求適合進行服務端測試?
現今的互聯網產品按使用場景大概可以分為三類
web端,也就是網頁。移動端,手機app&h5頁面(當然h5也在各個平臺適用,但目前來說更多的是應用于移動端的)
PC平臺產品,例如windows客戶端、mac客戶端等。

以上三類產品都或多或少的需要服務的支持才能使其功能更加完善、策略更加靈活;那么具體什么樣的需求適合進行服務端測試呢?我舉幾個例子:
1、(web端需求)12306購票主頁,頁面布局改版、支付接口由原來的跳轉到銀行網銀頁面進行支付修改為跳轉到支付寶、微信支付頁面進行支付;
以上的需求文檔包括兩個需求:1、修改頁面樣式;2、更換支付接口;
需求1主要的改動是修改頁面css,那驗證點主要是頁面樣式正確性、兼容性、頁面原有功能正確性;
需求2主要的改動是更換支付接口,修改支付跳轉邏輯,由于支付寶、微信接口屬于第三方提供的接口,所以對于接口功能正確性的驗證應該是接口提供方來做,所以需求2主要的檢查點就是支付跳轉邏輯的正確性,也就是支付流程正確性;
這兩個需求我認為都不需要單獨進行服務端測試,因為站在服務端的角度,這兩個需求都僅僅是更新服務器上的靜態文件而已,并沒有服務端邏輯的變動,而代碼變動主要會對前端功能造成影響,從客戶端功能和需求的角度設計用例并執行就ok了。

2、(移動端需求)搜狗搜索app,主頁上方增加當前天氣板塊;
猜測一下這個需求的實現,app在加載主頁時,發送一條http請求,帶上當前位置坐標,服務端根據位置判斷用戶當前所在城市和區縣,并請求第三方天氣接口,將返回內容格式化之后返回給客戶端,客戶端加載服務端返回的數據并進行展示;
先說一下這個需求可能存在的問題:1、客戶端和服務端由兩個開發團隊負責,這兩部分的進度有可能不同,任意一方未提測可能會導致測試delay;
這種情況比較適合將客戶端和服務端分別排期測試;
客戶端:1、通過mock數據驗證客戶端能正確響應各類數據渲染并展示;2、驗證客戶端樣式正確;3、驗證客戶端異常處理;
服務端:1、驗證根據坐標判斷用戶當前所在城市區縣;2、驗證第三方接口請求拼接正確性;3、驗證處理第三方請求返回正確性及容錯;4、驗證處理客戶端請求的容錯;

服務端測試分哪些部分,還拿上面的需求2來說,服務端測試可以分以下幾個部分:
1、服務端邏輯的正確性驗證;
2、服務端處理客戶端請求的容錯處理;
3、服務依賴的第三方數據的處理和容錯;
4、服務端性能測試;
具體方法:
1/2/3:都可以通過單測來覆蓋實現相應功能的函數;
1/2:也可以通過接口測試的方式驗證服務的入口出口;
4:需要進行性能評估后,通過壓測工具確定服務性能;

服務端測試如何開展&進行
1、了解產品需求及開發實現,評估是否需要做服務端測試;
2、如果評估需要進行服務端測試,需要與客戶端測試同學確認各自計劃;
3、根據測試時間、需求緊急程度、服務端邏輯復雜程度等因素評估服務端測試使用的方法,如果時間緊任務重,那么不適宜選擇單測的方式;如果時間充裕、且服務端邏輯較復雜,可以通過單測覆蓋更全面的測試點;實際使用的測試方法需要依具體情況來靈活確定,如果情況允許,甚至可以通過接口測試保證主路徑功能正常,待服務上線后再補充單測;
4、設計接口測試框架或設計單測框架
5、測試設計:接口測試case 或 單測case
6、執行測試 并 隨時執行回歸測試。無論選擇接口測試還是單元測試,case的維護都是比較重要的,因為服務端代碼修改靈活,可能修復一個問題的同時引起其它case的失敗,所以要定期執行所有case,以保證所用功能正確;
7、功能回歸完成后,根據之前評估的需要進行性能測試,具體方法不在這說了。

8、如果客戶端和服務端是分開測試的話,在服務端測試完畢后,需要通知客戶端測試進行集成測試;
9、客戶端依賴服務端上線的情況,需要服務端提前上線。這里如果是新服務的話,可以根據情況直接上線后測試線上代碼;
10、上線后要進行線上服務可用性監控,這個監控可以通過線上異常log報警或探針腳本實現,具體方法不限,目的是確保線上服務運行正常。


學制學費
學習時間
近期活動
開班信息
課程內容
就業情況
津公網安備12011302141430
如何成為IT行業中有競爭力的人工智能工程師?
在當今數字化浪潮洶涌澎湃的時代,人工智能作為 IT 行業最具爆發力的領域之一,正重塑著世界的方方面面,從醫療保健到金融服務,從智能交通到娛樂產業,其影響力無處不在。若想成為這一充滿魅力與挑戰領域中的佼佼者 —— 極具競爭力的人工智能工程師,需要在多個維度精心打磨自己。