千鋒教育-做有情懷、有良心、有品質的職業教育機構
一.什么是SDK
SDK,全稱:software development kit, 軟件開發工具包。
軟件開發工具包一般都是一些軟件工程師為特定的軟件包、軟件框架、硬件平臺、操作系統等建立應用軟件時的開發工具的集合。
軟件開發工具廣義上指輔助開發某一類軟件的相關文檔、范例和工具的集合。
軟件開發工具包是一些被軟件工程師用于為特定的軟件包、軟件框架、硬件平臺、操作系統等創建應用軟件的開發工具的集合,一般而言SDK即開發Windows平臺下的應用程序所使用的SDK。它可以簡單的為某個程序設計語言提供應用程序接口API的一些文件,但也可能包括能與某種嵌入式系統通訊的復雜的硬件。一般的工具包括用于調試和其他用途的實用工具。SDK還經常包括示例代碼、支持性的技術注解或者其他的為基本參考資料澄清疑點的支持文檔。
客戶端SDK是為第三方開發者提供的軟件開發工具包,包括SDK接口、接入文檔、以及demo等。
可以在任何第三方應用中集成,使用方便。
二:SDK和API的區別
sdk和api的區別有以下幾點:
1、組成不同:
sdk軟件開發工具包括廣義上指輔助開發某一類軟件的相關文檔、范例和工具的集合。API(應用程序接口)是一些預先定義的函數,或指軟件系統不同組成部分銜接的約定。
2、用途不同:
api目的是提供應用程序與開發人員基于某軟件或硬件得以訪問一組例程的能力,而又無需訪問源碼,或理解內部工作機制的細節。軟件開發工具包一般都是一些軟件工程師為特定的軟件包、軟件框架、硬件平臺、操作系統等建立應用軟件時的開發工具。
3、內容不同:
為了使用API函數,就要有跟API所對應的 .h和 .lib文件,而SDK正是提供了一整套開發Windows應用程序所需的相關文件、范例和工具的“工具包”。SDK包含了使用API的必需資料,所以也常把僅使用API來編寫Windows應用程序的開發方式叫作“SDK編程”。
三、SDK要測什么
1、客戶端SDK測試的對象
客戶端SDK測試,就是對提供給開發者工具包里面的內容進行測試,因此測試的主要內容有:
1) SDK接口和文檔
SDK接口是測試的主要對象,也是核心的內容。
2)SDK日志打印
對開發者來說,SDK接口里面的具體實現是透明的,當上層調用時遇到問題,可以依賴SDK打印的日志來定位分析。所以SDK日志是否完備,有助于問題的順利解決,對應用開發者、測試人員、SDK提供方來說都很重要。
3) 程序示例:demo
demo是SDK提供方用來展示如何調用接口實現具體的功能,也可以作為開發者直觀感受SDK接入的效果
四、SDK測試類型
根據需求和開發平臺不同,會有以下常見的測試類型:
功能的測試
主要是場景覆蓋和接口參數覆蓋。主要測試各種參數下組合下的返回值。
考慮數據緩存和存儲
考慮是否有回調
考慮對請求成功、或失敗的處理結果與預期一致
兼容性的測試
根據產品需求是市場排行,確保兼容選取的設備機型、版本、分辨率等,并兼容其他軟件
考慮模擬器的支持
覆蓋多平臺的,還要考慮多端消息數據包互通
性能方面的測試
滿足特定的性能指標(CPU、內存、耗電量、流量等)
特定場景性能:比如登錄需要同步大量的數據包和離線消息,需要考慮對這些數據包的解析和本地儲存的性能
穩定性方面的測試
業務場景在一定壓力下,持續運行一段時間,接口功能和設備資源占有無異常。
弱網環境測試
對弱網,及其他不同類型網絡和不同網絡環境,SDK接口均應有較好的處理
對比依據是新老版本、競品效果
安全性方面的測試
隱私數據的保護、訪問權限控制、用戶服務鑒權等
五:如何測試
1、了解業務流程,確定開放給開發者都有哪些接口
2、了解SDK用到的所有協議,每個協議中字段的意義和作用以及server端處理邏輯
3、接口要校驗輸入參數各種輸入情況是否能正確處理,返回值的正確性,是否有數據緩存到本地,檢查是否有回調,如果有對于請求成功、請求失敗(包括無網絡、服務器返回非200錯誤代碼)是否都有調用
4、測試中對每個請求都應該抓包測試,查看請求的字段、參數值、返回值是否正確
5、對于協議中必傳字段,SDK中是否校驗為空的情況
6、查看是否存在多發、少發請求的情況
7、對于異步請求的結果在其他地方(A類中)會用到的情況,檢查是否存在網絡較慢情況下,未完成請求數據為空時A類就用到數據
上一篇
手機app出現問題如何定位下一篇
性能測試流程相關推薦