首頁>Club>
1
回覆列表
  • 1 # 楠宮墨雪

    我作為JAVA開發,給出一些JAVA開發方面東西,請根據具體程式語言或者工作職責選擇性參考,如有錯誤,請大牛多多指正,共同進步。

    JAVA方面的介面大致分為:

    1,前後端互動介面

    目前越來越多的專案都是使用前後端分離,分散式開發,前端大多使用HTML5 vue 等進行開發,後端伺服器就是JAVA。這種分散式開發,時間短,效率高,前端負責美化,顯示,給使用者優良體驗,後端著重資料操作,這裡產生一個問題,前後端進行融合,匹配,那就是前後端介面進行融合,匹配。這個融合匹配過程中就是所謂的呼叫介面。

    那一個介面能不能用,通不通,就得先測試,一般開發過程中是由後端來書寫介面文件,前端開發者根據後端的介面文件,去調介面,傳送資料,拿到相應返回值,解析顯示。

    一般後端完成程式碼程式設計之後,都得自己測試介面。後端自己調介面一般就是幾種方式,例如長連線GET,POST方式可以用瀏覽器,POSTMAN工具,甚至是自己寫MAIN方法調介面,在控制檯輸出介面資訊,看有沒有報錯,看看回傳資料,打斷點除錯等,這些基本操作。

    我不是專業做前端,所以無法給出前端調介面的專業辦法,不過基本操作和後端類似,也有工具,瀏覽器,和前端debug這些辦法去測試介面。有時候一些常規問題也需要後端人員這樣協助查詢問題或者後端程式碼自我測試等,所以一些基本操作還是需要掌握的。

    2.後端呼叫第三方介面(前端有時候也需要調第三方,由於專業不是前端,所以不誤導大家了。)

    後端調第三方介面是很常規的操作,比如伺服器呼叫簡訊驗證平臺,向登入者傳送驗證碼。比如,呼叫第三方介面獲取今日天氣預報等等。這些操作,一般第三方會給出相應的demo(這個demo不一定拿過來就能用),後端根據demo,會結合自己的框架,寫一個符合自己伺服器的demo,用自己的demo去呼叫第三方介面,並不斷修正這個demo,直到穩定(這個穩定是指,正確性,穩定性等都符合專案要求),這也基本就是正式使用這個介面時的基準程式碼了。

    當然還有些第三方介面,就給出了文件,沒有demo,那就得自己根據介面文件建立測試類。

    3特殊的東西,socket和websocket

    這兩個東西不算是介面,是協議。但是開發過程中要協調,操作有些像呼叫介面一樣,特別是websocket作為即使通訊協議,調理和測試過程和介面特別相似,之前用websocket做即時聊天時,和U3D配合,特別難調,不是丟包,就是不通,還有通了又斷,各種複雜情況,後來還是大牛幫助解決的,所以這個只能說說使用感受了,還是要靠大牛指導。

  • 2 # testerzhang

    這個問題還是從需求、測試用例設計、執行來說吧。

    A.需求

    首先要了解這個介面提供的服務的需求定義,那麼我們就知道大概測試的結果是啥。同時理論上要先提供介面規範,方便後續測試,以及給呼叫者聯調的一個文件約定。

    B.測試用例設計

    根據測試的介面規範,基於業務進行場景設計,再結合邊界值設計方法、等價類劃分等常用設計方法進行用例設計。

    1.設計的方向是常規的測試用例設計:協議規範測試、介面入參、接口出參。

    協議規範測試:比如HTTP協議:URL地址、Header測試。不過一般情況下,預設呼叫者按照介面規範正常呼叫。這個不用過於詳細測試。

    2.介面入參:引數個數測試(注意是否必傳欄位),引數值測試(為空、正常值、非法值等,以及首尾有空格是否過濾)。

    3.接口出參:至少涵蓋一條成功的響應和一條失敗的響應,當然我們測試出更多錯誤碼,我們的覆蓋率也就更全面。

    4.業務場景用例:這個需要你對於這個介面的業務的瞭解程度,而且這是最重要的部分。

    比如中間使用了快取服務(第一次快取沒有,是不是直接讀資料來源,並存入快取;第二次直接讀取快取是否正確);

    比如需要考慮請求外部的介面獲取相應的資訊的時間損耗(連線不上外部介面,外部介面下線了,外部介面響應太慢);

    C.測試用例執行

    1.需要你對介面協議有一定的瞭解,選擇適當的開源工具(如postman)或者自己編寫指令碼進行模擬請求。

    2.需要熟悉介面所使用的中介軟體等知識(比如redis、kafka、mysql資料庫)。

    3.需要模擬外部介面返回給你現在正在驗證的程式的介面。(比如扣費業務,你不可能每測一個業務,就去調真實扣費)。

  • 3 # 優就業小助手

    一、什麼是介面?

    介面測試主要用於外部系統與系統之間以及內部各個子系統之間的互動點,定義特定的互動點,然後透過這些互動點來,透過一些特殊的規則也就是協議,來進行資料之間的互動。

    二、 常用介面採用方式:

    1、webService介面:是走soap協議透過http傳輸,請求報文和返回報文都是xml格式的,我們在測試的時候都用透過工具才能進行呼叫,測試。可以使用的工具有apipost、jmeter、loadrunner等;

    2、http api介面:是走http協議,透過路徑來區分呼叫的方法,請求報文都是key-value形式的,返回報文一般都是json串,有get和

    post等方法,這也是最常用的兩種請求方式。可以使用的工具有apipost、jmeter、loadrunner等;

    三、前端和後端

    前端:網站前端是對網頁靜態頁面的設計,通俗的來說,就是我們肉眼能看的到的東西,當我們瀏覽網站的時候所看到的頁面上的內容幾乎都是屬於前端,前端的工作就是網站頁面,靜態的頁面是沒有後端成分的,前端主要包括html和css外加js等一些樣式和佈局。

    後端: 網站的後端就是動態網站的技術,比如網站上的一些註冊登入和一些彈窗,這些都是後端的邏輯,常用的後端語言有php,jsp等,後端的資料庫也包含myspl等,都是對後端進行儲存資料。

    四、 介面測試概念

    介面測試是測試系統元件間介面的一種測試。介面測試主要用於檢測外部系統與系統之間以及內部各個子系統之間的互動點。測試的重點是要檢查資料的交換,傳遞和控制管理過程,以及系統間的相互邏輯依賴關係等(通俗來說就是,檢查業務邏輯是否滿足業務需求,校驗欄位是否正常你實際結果是否滿足預期)

    五、 介面的組成:

    a、介面說明

    b、呼叫url

    c、請求方法(get\post\put等)

    d、請求引數、引數型別、請求引數說明

    e、返回引數說明

    六、為什麼要做介面測試,介面測試的目標

    介面其實app和前端互動用的,所以好多人問,為啥做功能測試還要測介面,目標是啥不是多此一舉嗎?首先我告訴大家,這種想法是錯誤的

    那麼舉一個例子:

    例如一個登陸介面,例如產品上規定使用者名稱6-10個字元數字下劃線,但後端沒做判斷。但我們業務人員測試肯定驗證,但只是前端做了校驗,後端壓根就忘了這個小需求.那麼後果來了如果一個懂的直接抓包去篡改你的介面,然後繞過校驗,透過sql注入直接隨意登入。如果你這是一個下單業務,是不是給公司造成了很大損失

    所以此時此刻介面測試目標來了:

    1.可能發現客戶端沒有發現的bug(那麼也叫隱藏bug)

    2.及早爆出風險(保證質量正常上線)

    3.介面穩定了,前端隨便改

    4.最重要檢查系統安全性,穩定性

    七、如何進行介面測試

    1.使用介面測試工具進行測試,介面測試和介面文件生成工具apipost,介面測試和效能測試工具jmeter

    2.介面狀態碼錶示含義

    例如:200(成功)/300(重定向別的地方)/400(請求語法錯誤)/500(伺服器異常)

    測試點:

    B. 引數組合(傳入不同值)

    C. 介面安全(繞過驗證/繞過身份驗證/引數是否加密等)

    D. 異常驗證(輸入異常引數邊界值)

  • 中秋節和大豐收的關聯?
  • 什麼是社會再生產?