iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 1
2
Modern Web

Vue 怎麼寫測試系列 第 1

Day 1. 當主管問你:他媽的你為什麼想寫測試?

你好,我是 鐵人小生,偶然客串 30 天你的人生。

(小生梗好像被用過了,我道歉)

給主管的答案

針對主管的問題

很簡單,跟我這樣做

  1. 先賞他兩巴掌,叫他閉嘴,提辭呈
  2. 帶著你的女朋友遠走高飛
  3. 把所有存款轉帳到文章附的 ATM 帳號
  4. 驚醒意識到這是白日夢
  5. 自己沒有女朋友
  6. 也沒有存款
  7. 嗚嗚嗚嗚嗚

但主管還在你眼前,如果這題不好好回的話,就可以當自己的老闆了。
所以請你用力的拍桌面,把臉貼到主管的臉上,鼻尖頂著他的鼻尖,嘴巴微張輕吐著熱氣,深情的說

:為了我..呵呵,你個小淘氣。

如果你的主管是辣妹,我願意為你示範一遍

當然你會說

:這樣解釋主管怎麼可能聽懂

那是當然的

重點不只是你心裡的答案,還有她心裏的答案啊!

好啦,事實上是工程師們不太指望非技術出生的主管能理解為什麼 butterkniferetrofit 這些知名專案要寫測試,還要理解什麼叫 Code Coverage? 什麼是TDD? 而且什麼TDD還已經死了?

況且獲得主管的理解也不一定有用,他們還是會站在營運的角度為你的決策加上權重,讓更上層的決策者可以清楚你的決策在整個專案的地位,還要確保加上你的決策之後,能使公司繼續存活在當下的生態裡。

給自己的答案

我會說

:為了規格 (Spec)

寫測試就像是給一份約定
就像是小學生在長桌中間的那條白線
就像是指考數學前說好不能打咖不能打手槍
就像是剛下班決定今晚隨便吃吃
老婆生氣地提醒你今天結婚紀念日
就像是,有太多的就像是

但約定不一定會把你變成更好的人
沒有打那槍,就遇不到現在的這群好朋友
沒有踰矩那條線,她不會在 15 年後重逢還記得你是誰
並成為你的老婆

我知道你在想什麼

尼瑪,那我還要不要寫測試?

冷靜!冷靜!

所以我說

:重點在你心裡的答案

現階段的測試被提升到了道德層次,成為了新的宗教信仰
然而我們都知道,宗教不一定會把你變成更好的人

喔對了,黃國昌的罷免同意票哪來的

..太敏感了嗎?

haha, 宗教不一定會把你變得更好,但好的原則會
我們在這 30 天會檢視哪些測試對 VueJS 是良好的
而哪些原則只會把你的 code 弄的更糟。

喔對了,如果想吃牛排,還剩兩天可以激怒老闆來參加自我挑戰組
我現在就寫我的第一個測試

describe 鐵人賽 {

    test('老闆沒完賽要請吃牛排') {
    
        let 鐵人在 = new Challenge();
        let 老闆 = new Challenger({ name: 'ocom' });
        設定完賽天數( 老闆, 2 );
        
        except( 鐵人賽.是否符合規則( 老闆 ) ).toBe( false );
    }
}

good, 測試過了。


下一篇
Day 2. 你看,我心中的惡魔已經那麼大了。
系列文
Vue 怎麼寫測試30

尚未有邦友留言

立即登入留言