2009-10-29 80 views
1

創建Pex測試來測試由該DLL控制的DLL和硬件?創建Pex測試來測試由該DLL控制的DLL和硬件?

我有一些硬件,它有一個API控制的DLL。我已經在nunit中編寫了一些單元測試,它會調用API的相應部分並進行測試。

例如,我可能有一個「獲取數據測試」,它有一個1.打開,2.一邊讀,3.另一邊發送,斷言是否數據是正確的。

我在想,Pex可能會很好的操縱這些數據。

我的問題是因爲我坐在一個DLL的頂部,我真的需要把幾件事情拼湊在一起進行測試我該如何在這裏實現Pex(我現在也知道Pex在這個時候什麼也沒有)?

我是否需要創建一個API來控制已讀取和發送的DLL的上方,並讓Pex在此層創建它的測試?

編輯: 我做了一些更多的研究,並在 http://channel9.msdn.com/posts/Peli/Getting-started-with-Pex-in-Visual-Studio-2008/

觀看了精彩的視頻在我質疑這樣做的能力。聽起來像Pex將創建測試,但不是一個真正的整個系統(API加硬件加數據)

回答

1

它必須測試代碼生成測試,所以它不會達到外部行爲。如果你的API很薄並且做得不多,那麼你不會從中獲得太多。

如果你在這個api中有相當多的邏輯以及硬件調用,我會將所有這些與實際與硬件進行交互的代碼分開 - 定義一個接口,並在接下來的碼。這將允許您使用所有涉及的邏輯。

以上內容包括分離/分析發送/接收數據等內容。你將能夠涵蓋所有這些。