資料存取層的測試… 真的比較麻煩
有些資料是已經存在於資料庫,例如定期匯入或排程計算的資料結果,如果在程式裡使用 AutoFixture 或是假資料來做測試,有時候會出現一些問題點,所以就會從資料庫直接取得一部份的資料來做為測試資料,匯出的方式有很多種,而這一篇所介紹的方式就是其中一種,我是希望可以盡量使用程式的方式來處理而不是以 Insert Script 的方式來,不過這不是絕對的做法,就看各位習慣什麼方式,或許大家有更好以及更好管理的方法。
資料存取層的測試… 真的比較麻煩
有些資料是已經存在於資料庫,例如定期匯入或排程計算的資料結果,如果在程式裡使用 AutoFixture 或是假資料來做測試,有時候會出現一些問題點,所以就會從資料庫直接取得一部份的資料來做為測試資料,匯出的方式有很多種,而這一篇所介紹的方式就是其中一種,我是希望可以盡量使用程式的方式來處理而不是以 Insert Script 的方式來,不過這不是絕對的做法,就看各位習慣什麼方式,或許大家有更好以及更好管理的方法。
去年曾經向各位介紹如何使用 LINQPad 快速產生相對映 SQL Command 查詢結果的類別,連結如下:
http://kevintsengtw.blogspot.tw/2015/10/dapper-linqpad-sql-command.html
對於使用 Dapper 做為資料讀取異動操作的開發者來說,應該是相當方便,目前我目前的工作環境裡,幾乎新開發的專案裡都已經使用 Dapper 以及快速產生相對映類別的方法。
另外就是有關於單元測試的部分,公司裡的各個開發團隊也陸續在專案裡導入單元測試,不管是應用展示層或是商業邏輯層都會嘗試去做單元測試,唯獨資料存取層的單元測試卻是比較少人會去做,當然資料存取層的單元測試是否要做,這並沒有一定的標準答案,而我所認知的是,只要程式是開發人員去編寫出來的就有必要做測試,但是資料存取層的測試所牽涉到的技術會比較多一些,也關係到資料存取所使用的方式,都是影響要不要做測試的因素。
而這一篇所要介紹的內容也就是在做資料存取層的單元測試時的其中一個環節。