給 Web 開發人員推薦的測試工具
用戶對於現代 Web 應用除了美觀要求之外,對產品體驗度也有較高的要求。在推薦過幾期開源圖形庫和通用獨立 UI 組件後,覺著是時候推薦一些測試工具了。這應該也是該系列的最後一篇,感謝大家的支持。
給 Web 開發人員推薦的通用獨立 UI 組件(二)
給 Web 開發人員推薦的通用獨立 UI 組件(一)
給 Web 開發人員推薦的開源圖形庫 —— 2D/3D
給 Web 開發人員推薦的開源圖形庫 —— 動畫
給 Web 開發人員推薦的開源圖形庫 —— 數據可視化
一、單元測試/測試運行器
1、Jest:https://www.oschina.net/p/jest
知名的 JavaScript 單元測試工具,由 Facebook 開源,開箱即用。它在最基礎層面被設計用於快速、簡單地編寫地道的 JavaScript 測試,能自動模擬 require() 返回的 CommonJS 模塊,並提供了包括內置的測試環境 Dom API 支持、合理的默認值、預處理代碼和默認執行並行測試在內的特性。通過在並行進程中同時運行測試,讓測試更快地結束。
2、AVA:https://www.oschina.net/p/ava
號稱「未來的測試運行器」,利用 JavaScript 在 Node.js 里使得 IO 可以並行的優點,讓你的測試可以並發執行,這對於 IO 繁重的測試特別有用。另外,測試文件可以在不同的進程里並行運行,讓每一個測試文件可以獲得更好的性能和獨立的環境。測試並發執行強制你寫原子測試,意味著測試不需要依賴全局狀態或者其他測試的狀態。
3、Mocha:https://www.oschina.net/p/mocha-js
一個功能豐富的測試框架,用於 Node.js 和瀏覽器上的 JavaScript 應用測試,使非同步測試變得簡單而有趣。它可以持續運行測試,支持靈活又準確的報告,當映射到未捕獲異常時轉到正確的測試示例。
4、Karma:https://www.oschina.net/p/karma
基於 Node.js 的 JavaScript 測試運行器,旨在為開發人員帶來有效的測試環境。可用於測試所有主流 Web 瀏覽器,也可集成到 CI 工具,還可和其他代碼編輯器一起使用。另外一個強大特性就是,它可以監控文件的變化,然後自行執行,通過 console.log 顯示測試結果。
二、Web 測試
1)集成測試
Enzyme:https://www.oschina.net/p/enzyme
一個用於 React 的 JavaScript 測試工具,方便你判斷、操縱和歷遍 React Components 輸出。其 API 旨在通過模仿 jQuery 的 API ,使得 DOM 操作和歷遍很靈活、直觀。兼容所有的主要測試運行器和判斷庫。
示例:Shallow Rendering
import React from "react";import { expect } from "chai";import { shallow } from "enzyme";import sinon from "sinon";import MyComponent from "./MyComponent";import Foo from "./Foo";describe("<MyComponent />", () => {
2)功能測試
1、WebDriverIO:http://webdriver.io/
該庫是 Node.JS 的 Webdriver(瀏覽器自動化)模塊,可在 BDD / TDD 測試框架中編寫超級簡單的 Selenium 測試。
2、Nightwatch:http://nightwatchjs.org/
一個易於使用的基於 Node.js 的瀏覽器自動化測試解決方案。它使用強大的 Selenium WebDriver API 來在 DOM 元素上執行命令和斷言。語法簡單但很強大,使你可以快速編寫測試。內置的命令行測試運行器,能夠運行整體測試,分組測試或者單個測試。
類似的還有 Protractor 和 CasperJS ,感興趣的可以直接查看。
3)Visual 測試
Storybook:https://storybook.js.org/
一個 UI 組件的開發環境,允許你瀏覽組件庫,查看每個組件的不同狀態,以及互動式開發和測試組件。它運行在應用之外,允許隔離開發 UI 組件,這可以提高組件的重用性、可測試性和開發速度。
4)猴子測試(Monkey Testing,也稱「搞怪測試」)
Gremlins.js:https://www.oschina.net/p/gremlins-js
一個用 JavaScript 編寫的猴子測試庫,用於 Node.js 和瀏覽器。通過釋放大量無規律的 gremlins 來檢測 Web 應用的魯棒性。
5)服務端測試
1、K6:https://k6.io/
用於測試性能,以開發人員為中心的負載測試工具。提供了一個通過 REST API 進行編排的清新易用的腳本 API 。使用 Go 和 JavaScript構 建,可以很好地集成到開發工作流程中。
2、SuperTest:https://github.com/visionmedia/supertest
SuperAgent 的一個擴展,一個輕量級 HTTP AJAX 請求庫。提供對 HTTP 測試的高度抽象, 極大地簡化了基於 HTTP 的測試。
※六大理由告訴你為什麼 GNOME 仍然是最好的 Linux
※11 個超酷的編程新工具推薦
※給 Web 開發人員推薦的通用獨立 UI 組件(二)
※回顧十個 Web 開發者熟悉的經典開源項目和工具
※9 款最好的免費博客網站對比
TAG:OSC開源社區 |
※AR Cloud公司6D.Ai正在進行SDK測試,尋求封閉測試版的開發人員
※SpaceX再次推遲發射:整流罩需測試
※Facebook測試新功能 給用戶提供公共帖子的私人評論選項
※我們的開發哲學:合作和測試
※資深程序員:給Python軟體開發測試的25個忠告!
※沒事跑個分《最終幻想15》Windows版測試工具推出
※PlusAI公司聯合奇瑞汽車 將推進自動駕駛技術研發、集成測試等工作
※蘋果公布iOS Beta7開發者測試版更新!
※Lyft開始在「鬼城」GoMentum試驗場測試自家研發的自動駕駛汽車
※Oculus推出「通知」測試版,知曉重要更新、推薦內容、朋友活動
※IBM聯手蘋果開發人工智慧服務;聯想新零售4月將推全新品牌;網易與谷歌合作發布開源UI自動化測試方案
※分析師表示蘋果沒有對HomePod進行足夠的測試
※Facebook 正在測試「踩」功能,讓用戶提供評論反饋
※Facebook擴大突發新聞測試:50家內容發布商獲授權
※Google正在為搜索功能測試新的材料設計布局
※j10b矢量發動機測試
※啟動您的引擎:GT Sport測試版將於本月推出Quake是免費和付費遊戲
※Facebook 測試Downvote負評功能,將進行小範圍內測
※App自動化測試開發實戰短訓班
※拜騰與Aurora合作 將研發測試自動駕駛系統