你必須很努力

Day17 - 匯出 excel-測試篇

2021/09/30
字數統計: 284閱讀時間: 1 min

前言

上篇題到如何製作產 Excel 檔,這篇以撰寫測試為主

說明

延續上篇完成的補寫測試,這邊還有額外安裝 factory_bot_rails Gem 使用,可參考此 pr

實作

主要測試內容為: 工作列表名稱 (worksheet)、Excel 標題列、內容,確認資料正確性

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# spec/services/shops_excel/generator_spec.rb

require 'rails_helper'

RSpec.describe ShopsExcel::Generator do
subject { described_class.new.execute }

before do
@shop = create(:shop)
end

it 'generate rows correctly' do
xlsx = subject
first_sheet = xlsx.workbook.worksheets[0]
expect(first_sheet.name).to eq('商家清單')
expect(first_sheet.rows[0].cells.map(&:value)).to match_array(
%w[商家名稱 信箱 備註]
)
expect(first_sheet.rows[1].cells.map(&:value)).to match_array(
[@shop.name, @shop.email, @shop.note]
)
end
end

小結

一開始不熟悉時,會做比較慢,蠻正常的,因為沒做過所以也沒頭緒,多做幾次後,就會逐漸上手,慢慢的就能變成先寫完測試,再開始實作內容了~

參考資料

  1. factory_bot_rails GitHub

鐵人賽文章連結:https://ithelp.ithome.com.tw/articles/10272496
medium 文章連結:https://link.medium.com/H7KaCZbhRjb
本文同步發布於 小菜的 Blog https://riverye.com/

備註:之後文章修改更新,以個人部落格為主

原文連結:https://riverye.com/2021/09/30/Day17-匯出-excel-測試篇/

發表日期:2021-09-30

更新日期:2022-09-23

CATALOG
  1. 1. 前言
  2. 2. 說明
  3. 3. 實作
  4. 4. 小結
  5. 5. 參考資料