rspec

rspec

影片教學課程 RSpec-Rails (基礎篇) 上架

RSpec課程來囉!從5/10開始錄製,到6/4終於完整上架、發佈,算是我第一個比較完整的Ruby相關課程。希望大家多多支持喔! 課程簡介 RSpec是一套Ruby語言底下的自動化測試框架,主要用於測試程式執行是否符合我們想要的結果,可在實際手動執行之前先讓程式自動進行測試,節省開發和維護的時間。 由於RSpec強調其寫法非常口語化,有別於一般的測試語法,又稱BDD(Behaviour driven development)開發框架,意思是開發者可以將RSpec視為一種規格撰寫的說明書。在實際開發之前先將規格寫好,像是說明書一樣,接著再照這份「說明書」進行開發。這也是為何RSpec要將自己的每一個測試單元都稱為「specification」,字面上就是「規格」的意思。 RSpec算是Ruby語言當中非常受歡迎的測試框架,與另一套Cucumber同樣都強調其語言表現方式非常自然。假如想要了解RSpec到底如何能夠幫助開發者,一起來看看教學影片吧! 教學內容 本系列教學會說明: 1. 在Rails當中要如何使用RSpec撰寫測試 2. 使用RSpec測試scaf

rspec

RSpec-Rails (基礎篇)(7): 撰寫整合測試

RSpec-Rails教學(基礎篇)全部內容 單元測試(Unit test)和整合測試(Integration test)的差異。 1. 單元測試針對程式的各個最小單位進行測試,在Rails當中通常測試的最小單位是method,要確保每一個method的內容都可以順利進行。尤其抓錯字在unit test中非常重要!可以省下非常多時間!(本人親身經歷) 2. 整合測試主要是看大方向,通常直接從網址進行GET或帶入變數,確保回傳的結果是正確無誤的。 3. 兩種測試一樣重要,如果只有單元測試,我們很容易忽略掉每個class之間互動可能發生的問題。 4. 如果只有整合測試,那發生錯誤的時候會很難抓問題出在哪,難度就跟我們直接下去開瀏覽器測試一樣,實用性較低。 spec/requests/posts_spec.rb require "rails_helper" RSpec.describe "posts", :type => :request do

ruby on rails

RSpec-Rails (基礎篇)(2): 安裝RSpec至Rails

RSpec-Rails教學(基礎篇)全部內容 產生新專案 $ rails new demo-app Gemfile group :development, :test do gem 'rspec-rails' end $ bundle install $ rails generate rspec:install $ rails generate scaffold post $ rake db:migrate $ rspec 測試當中會有許多不必要的測試檔案,因此從頭來產生一次。 $ rails destroy scaffold post 將RSpec相關的產生器關掉。 /config/application.rb config.generators do |g| g.controller_specs false g.