Web前端測試維度:
- 功能性:功能准確性、兼容性
- 易用性:易學性、易理解性、易操作性、吸引性
- 可靠性:成熟性、容錯性、穩定性、可恢復性、安全性
- 可移植性:適應性、易安裝性、兼容性
- 可維護性:易分析性、易測試性
- 效率:時間特性、資源利用性
調優點:
1. 減少http請求的數量
2. 用好瀏覽器緩存機制
3. 利用GZIP壓縮機制:只針對文本類資源有效
4. 把CSS文件放在HTML的開頭
5. 把JavaScript文件放到HTML的結尾
6. 避免CSS表達式
7. 減少DNS查找:把域名解析成IP地址
8. 最好使用JavaScript壓縮 var username;->var u;
9. 避免重定向redirect
10.去除重復的腳本
11.使用Ajax請求:局部刷新
12.使用CDN,內容分發網,區域類的緩存服務器,靜態內容
HTTPWatch進行性能分析
Time Chart時間分析:
Blocked:瀏覽器預處理的時間----緩存查找+等待時間(線程資源占用等)
DNS Lookup:域名解析----域名解析成IP地址,一個域名只會解析一次
Connect:建立http/https連接的時間
Send:請求開始到發完的時間
Wait:服務器端的處理時間0.9 +極少的網絡時間0.1
Receive:從響應的第一個字節開始到接收完為止
TTFB:從剛開始發送請求到接收第一個自己為止
Network:從剛開始發送請求到接收字節結束
減少請求的數量:
- 減少重定向請求
- 減少預處理的時間
- 減少TCP連接的時間
- 減少發送請求的時間
- 減少服務器端硬盤IO的時間:小圖合成一張大圖,前端利用css定位坐標顯示特定圖片;把css都寫到前端代碼中;較少域名的數量可以減少DNS的解析時間
- 減少瀏覽器渲染的時間
文本類資源壓縮情況:HTML、CSS、JavaScript、其他文本內容
-
減少內容本身的大小—空格、tab鍵等不可見字符;注釋;變量名或函數名使用短名稱
-
使用GZIP在傳輸過程中壓縮
其他分析優化技術:
- 緩存:緩存控制有兩個字段:Cache-Control有很多選項(可百度)、Expires過期時間
- Css放在開頭
- JavaScript放在結尾
- CSS表達式
- Ajax請求:x-requested-with:XMLHttpRequest
Web可用性測試
- 用戶體驗性 User Experience
- 使用感受:清爽、美觀、簡潔
兼容性測試
前端兼容性:
- 客戶端操作系統:PC(windows1-10,Mac OS)、手機、響應式布局css3-media
- 客戶端瀏覽器:IE、Firefox、Safari、Chrome、UC、Opera、QQ-360-Sohu-Baidu(手機的雲測試平台)
- 客戶端分辨率
- 客戶端處理能力
后端兼容性:
- web服務器
- 腳本引擎
- 數據庫
- 操作系統
安全性測試
利用安全性測試技術,找到潛在的漏洞
- 認證與授權:登錄認證;授權-權限管理;避免未經授權的頁面可以直接訪問(通過Session變量判斷isLogin)
- Session與Cookie:Session保存在服務端、Cookie保存在客戶端,避免保存敏感信息到Cookie文件中;SessionID-Cookie欺騙
- DDOS拒絕服務攻擊:分布式拒絕式服務供給,瘋狂的向服務器發請求
----肉雞:遠程控制其他電腦發送請求(擴大服務器資源);
----攻擊聯盟
----利用TCP建立連接的規則三次握手 C>S、S>C、C>S,客戶端用假IP向服務端發送請求,服務端無法響應則等待消耗時間,需要修改底層 - 文件上傳漏洞
- XSS跨站攻擊:獲取用戶的信息、釣魚網站
- SQL注入
- 暴力破解
