文章未來將更新於:
https://kevinyay945.com/golang-project-design/anki-support/implement-normal-anki-note-operator/
在第一階段寫完測試之後,接著就要開始完成實際上的實做內容
在這個階段會發現,其實你的一開始的happy path沒有你想像中寫的完整
像這次的撰寫過程,我就發現我在造句的時候,會需要有曾經的單字列表當作參數,但我在一開始規劃的時候沒有想到,所以也在實做的時候將這個補上
在這次的開發流程中,很明顯的感覺到這次測試帶給我的是,如果你的測試規劃的完整,你在開發的時候會因為測試給你的回饋,而回去檢查你的程式有沒有問題
比如在這次的開發過程,我有很多時候聲音檔的檔名路徑就沒有寫好,導致發生了很多欄位寫錯位置的問題
而這些都透過測試的過程發現並解決了
但我覺得整體開發下來,程式的可閱讀性非常低,而且因為mock的時候,如果你輸入的變數是一個struct,他只能一整個struct下去比較,所以就會需要類似DiffChecker的幫忙來找尋到底是哪裡有問題
但整體下來,我還是覺得開發的安心程度高上不少,也真的有幫我解決了一些低級問題
而這是這次的程式碼
https://github.com/kevinyay945/anki-support/commit/8a681a800f4ce1fa041af1c5156be17f1b418636