秒殺場(chǎng)景的測(cè)試與實(shí)現(xiàn)
測(cè)試:
特點(diǎn):定時(shí)開始、庫存有限夺刑、操作可靠、瞬間數(shù)量大
確定什么時(shí)候系統(tǒng)接近崩潰
確定關(guān)鍵功能(下單分别、庫存扣減遍愿、支付)
確定指標(biāo)(目標(biāo)TPS、并發(fā)用戶數(shù)耘斩、成功率等)
確定環(huán)境信息
監(jiān)測(cè)點(diǎn):CPU沼填、內(nèi)存、IO括授、TPS坞笙、平均響應(yīng)時(shí)間等
執(zhí)行測(cè)試
分析數(shù)據(jù)。
登陸功能的測(cè)試
功能測(cè)試
- 正常登陸
- 賬號(hào)錯(cuò)誤荚虚、密碼錯(cuò)誤薛夜、用戶未注冊(cè)、特殊字符登錄
- 第三方賬號(hào)登錄
- 某項(xiàng)為空
- 驗(yàn)證碼測(cè)試
頁面測(cè)試
- 頁面顯示是否正常
- 快捷鍵(回車等)是否正常
- 不同瀏覽器是否能整成使用
安全測(cè)試
- sql注入
- 不登錄進(jìn)入
- 用戶名和密碼是否通過加密的方式版述,發(fā)送給Web服務(wù)器 却邓、
- 用戶名和密碼的的輸入框,應(yīng)該禁止輸入腳本 (防止XSS攻擊)
- 錯(cuò)誤次數(shù)限制
- 同一用戶多客戶端
性能測(cè)試
- 壓力
- 穩(wěn)定性
常見的測(cè)試類型
在我目前的工作中院水,接觸到最多的是:
性能測(cè)試、功能測(cè)試简十、單元測(cè)試檬某、接口測(cè)試、回歸測(cè)試螟蝙、穩(wěn)定性測(cè)試恢恼、聯(lián)調(diào)測(cè)試、全鏈路測(cè)試胰默。
但我了解到的還有:
黑盒測(cè)試场斑、白盒測(cè)試(這兩個(gè)涵蓋面比較廣)
集成測(cè)試(兩個(gè)已經(jīng)測(cè)試過的單元組合成一個(gè)組件,并且測(cè)試它們之間的接口牵署。大爆炸集成漏隐、三明治集成、自頂向下奴迅、自底向上)
系統(tǒng)測(cè)試(完整系統(tǒng)的測(cè)試)
驗(yàn)收測(cè)試(α測(cè)試-一個(gè)用戶青责、開發(fā)環(huán)境/β測(cè)試-多個(gè)用戶、實(shí)際使用環(huán)境/正式驗(yàn)收測(cè)試)
兼容性測(cè)試(不同操作系統(tǒng)、不同瀏覽器脖隶、向前向后兼容)
界面測(cè)試(細(xì)節(jié)扁耐,穩(wěn)定性等)
用過哪些測(cè)試工具
Jmeter、以及基于Jmeter開發(fā)的性能測(cè)試平臺(tái)(用于性能測(cè)試 TPS产阱、并發(fā)數(shù)婉称、平均響應(yīng)時(shí)間、成功率)
Ucase測(cè)試平臺(tái)(自主開發(fā)的接口測(cè)試平臺(tái))
Arthas(阿里的開源Java診斷工具构蹬,主要用于性能測(cè)試王暗,定位耗時(shí)長的方法 trace)
Postman(用于接口調(diào)試,發(fā)送請(qǐng)求)
Jira(項(xiàng)目管理工具怎燥,項(xiàng)目進(jìn)度瘫筐,bug提交等)
SecureCRT(服務(wù)器連接工具)
Navicat(數(shù)據(jù)庫連接工具)
OpenShift(容器云環(huán)境)
Jenkins(持續(xù)集成,構(gòu)建)
Gitlab(代碼管理)
測(cè)試方法 黑盒白盒
測(cè)試方法很多種铐姚。
根據(jù)程序執(zhí)行狀態(tài)區(qū)分:
靜態(tài)測(cè)試-被測(cè)程序不運(yùn)行策肝,只分析程序中的語句,結(jié)構(gòu)等隐绵。
動(dòng)態(tài)測(cè)試-運(yùn)行被測(cè)程序之众,檢查是否有問題。
實(shí)現(xiàn)細(xì)節(jié)和內(nèi)部結(jié)構(gòu)區(qū)分:
黑盒測(cè)試-根據(jù)需求說明書依许,不看代碼棺禾,進(jìn)行測(cè)試
白盒測(cè)試-看代碼進(jìn)行測(cè)試(控制流分析,數(shù)據(jù)流分析峭跳,路徑分析膘婶,程序變異等,邏輯覆蓋為主要測(cè)試方法)
灰盒測(cè)試-介于黑盒和白盒之間
程序執(zhí)行的方式區(qū)分:
手工測(cè)試-手動(dòng)測(cè)試
自動(dòng)化測(cè)試-預(yù)先設(shè)定的條件下運(yùn)行被測(cè)程序
測(cè)開工程師在整個(gè)產(chǎn)品從立項(xiàng)到最后上線都參與了哪些過程
需求分析階段-了解需求(對(duì)需求足夠了解才能準(zhǔn)確地寫出用例)
需求開發(fā)階段-編寫測(cè)試案例蛀醉,并且與開發(fā)悬襟,BA,業(yè)務(wù)進(jìn)行核對(duì)
開發(fā)完成階段-進(jìn)行測(cè)試(功能測(cè)試拯刁、接口測(cè)試脊岳、性能測(cè)試等)
UAT用戶驗(yàn)收測(cè)試階段-配合UAT測(cè)試人員進(jìn)行測(cè)試
封板上線-對(duì)代碼進(jìn)行封板,記錄版本號(hào)垛玻,審批割捅,跟進(jìn)上線單
程序上線。
測(cè)試一個(gè)接口帚桩,寫測(cè)試用例亿驾,并歸類
一般我是用Xmind梳理測(cè)試用例的(好歸類,好梳理)
例如:測(cè)試現(xiàn)金分期下單接口:
有哪些可能導(dǎo)致支付寶二維碼被盜刷
付款碼
- 手機(jī)截圖
- 在付款時(shí)被身后的人悄悄掃描
掃描對(duì)方二維碼
- 偽造繳費(fèi)單
- 替換商家收款碼
- 替換共享單車開鎖碼
如何測(cè)試一支筆
按照階段測(cè)試:
單個(gè)零件測(cè)試(筆芯账嚎、按鈕颊乘、彈簧参淹、筆帽、筆油乏悄、筆尖)
組裝測(cè)試(組裝筆殼浙值、組裝筆芯)
系統(tǒng)測(cè)試(組裝好整體進(jìn)行測(cè)試)按照測(cè)試關(guān)注點(diǎn):
功能測(cè)試(能否正常書寫,能在什么材料上書寫檩小,能在什么條件下書寫-溫度开呐、濕度,筆油用完了會(huì)有什么情況规求,使用不同筆芯能否正常使用等筐付,筆帽的使用是否正常)
性能測(cè)試(高速畫圈圈、畫8字阻肿、用多久能用完)
易用性測(cè)試(是否好用)
外觀測(cè)試(美觀或丑陋)
安全性測(cè)試(筆的各個(gè)部位是否含有對(duì)人體有害的物質(zhì))
如何測(cè)試cp命令
功能
拷貝的文件大小瓦戚、類型
目錄中的文件類型、目錄深度
目標(biāo)目錄中是否有同名丛塌、同類型文件異常
參數(shù)異常:特殊字符较解、長度超長、源/目標(biāo)不存在
文件異常:無權(quán)限赴邻、非法內(nèi)容
存儲(chǔ)介質(zhì)異常:磁盤損壞印衔、磁盤已滿
執(zhí)行過程異常:拷貝過程中刪除源文件、目標(biāo)文件性能(注意關(guān)注系統(tǒng)各項(xiàng)指標(biāo))
大文件
大量小文件
跨文件系統(tǒng)拷貝
并發(fā)執(zhí)行拷貝
設(shè)計(jì)測(cè)試用例姥敛,一個(gè)客戶端登錄頁面奸焙,用戶名,密碼彤敛,登錄三個(gè)按鈕与帆,盡可能詳細(xì)的說
軟件卡怎么辦
手機(jī)、電腦硬件問題——更新硬件墨榄,清理不用的殘留(重啟等)
處理器不夠快
內(nèi)存不夠大
磁盤玄糟、存儲(chǔ)快用盡
顯卡不夠好網(wǎng)絡(luò)問題——換好的網(wǎng)絡(luò)、重啟電腦渠概、手機(jī)
信號(hào)不好
帶寬不夠軟件問題——反饋軟件卡發(fā)商
內(nèi)存泄露
界面優(yōu)化不夠好