Robert Chang (張凱強)
文章
標籤
RSS
Robert Chang (張凱強)

Robert Chang (張凱強)

記錄軟體工程、和自我觀點的個人部落格

標籤:RSpec

當你在猶豫是否要寫自動化測試的時候,可以參考一下這五個好處,或許可以替你帶來意想不到的效果

在寫 Rails 時,主要建立假資料有 Factories 以及 Fixtures 兩種方式,這篇文章會就兩種不同方式進行解釋,以及如何使用。

表徵測試 ( Characterization Test ) 的目的是幫助工程師驗證對應用程式所做的修改不會造成不期望的改變,大部分是替一個沒有足夠單元測試的應用程式架起的保護網。

對我來說 Mock、Stub 都是很難一言以蔽之的概念,決定挽起袖子,認真的來梳理一下這之間的差別到底是什麼?

在 Rails 的測試分成很多種類型,但時間卻是固定的,我們該權衡什麼樣的測試是重要的,什麼樣的測試可以被更重要的測試給 Cover 到

WebMock 以及 VCR 是當 Rails 需要測試第三方 API 時常見的手段,透過錄下整個 Request 以及 Response 的過程來模擬呼叫 API 的真實模樣

利用瀏覽器自動化測試也是一種很常見的手段,在 Rails 中,Capybara 就是內建的瀏覽器自動化測試套件,可以幫助你測試網頁的行為是否符合預期

FactoryBot 是在撰寫 RSpec 時不可或缺的一個套件,製造假的資料是一件很浪費時間的事情,但 FactoryBot 提供很好的介面和方法讓我們快速建立假物件來進行測試。

RSpec 是一個獨立的測試框架,但最常應用的場景還是和 Rails 做結合,所以有另一個 Gem 叫做 rspec-rails,算是為了可以更好地相容 Rails 而出現的特規版

RSpec 中的 mock 也是核心函式庫的一員,在測試的時候,常常會有依賴不同方法回傳值得情況發生,spy 是除了 double 以及 instance double 之外的另一種用法