作者lovesnake (LoyalDog)
看板C_and_CPP
標題[問題] 資料結構的Unit Test問題
時間Wed Mar 16 10:39:30 2016
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
VC++12
問題(Question):
如下程式碼,一個自己撰寫的資料結構有加入、搜尋兩個功能。
在做Unit Test遇到一個困擾...
我要確認Add是否正確,得Search資料有沒有加進去。
這樣Unit Test就不Unit了 Orz
有想過把儲存資料的資料結構IoC然後測試時Inject Mock來看有沒有加入。
可是...很奇怪?! 這應該就已經是最底層的東西了,不應該還有抽換這回事吧?
請問還有什麼解決辦法嗎?
謝謝!
程式碼(Code):(請善用置底文網頁, 記得排版)
class LinkedList
{
public:
void Append(Data data);
Data Search(Filed filed);
private:
shared_ptr<DataNode> m_dataStorage;
};
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.133.8.225
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1458095973.A.A4B.html
補充一下,我覺得不unit的點是一個測試需要確保兩個功能都正常運作才能順利成功。
※ 編輯: lovesnake (223.137.218.200), 03/16/2016 10:47:09
→ Caesar08: VC++並沒有13喔03/16 10:51
我要表達的是………VisualStudio 2013 Orz
已改!
※ 編輯: lovesnake (223.137.218.200), 03/16/2016 11:02:16
→ celestialgod: 2012 -> 11, 2013 -> 12, 2015 -> 14 XD 03/16 11:02
推 chchwy: 這應該沒辦法囉...測試不應該察覺內部結構 就這樣測吧 03/17 21:21