2011-09-20 64 views
0

處理與一系列USB設備通信的庫我想開發一套API測試來檢查新設備的集成狀態。我希望測試的一種情況是意外的設備移除。在設備必須手動拔出/重新插入的測試腳本中創建斷點我希望能夠以編程方式模擬此行爲。如何模擬串口故障?

目前我正在用Devcon來模擬這個,但是我面對的問題是,如果API已經連接到開放串行端口上的設備Devcon無法關閉該串行端口,因此我無法完全模擬設備移除,即使設備管理器中除了剩餘COM端口之外的所有設備表現都被刪除。

到目前爲止,我一直未能在我的研究成果中找到解決方案,並想知道是否有人遇到了相同的問題/解決方案。

(語言是C#,.Net2.0)

回答

3

,這可能是不完全的回答你的問題,但我會做到以下幾點: 重構每次訪問真正的硬件/設備到接口和它們注入作爲你的代碼的依賴。 現在,您可以模擬這些接口並按照自己的喜好進行單元測試。

爲了對真實的東西進行整合/真實測試,並確實拔掉/插上等困難的方式。

這對我和我認爲對其他許多人來說很好。

+0

API測試的目的是與尚未正確集成的實際設備進行通信,並確定需要完成哪些工作才能達到合規性,因此嘲笑硬件不是真正的選擇。無論如何,我不認爲你真的可以稱之爲'單元測試'。不管怎麼說,還是要謝謝你。 –

+1

好 - 很抱歉API測試讓我注意到了。但在這種情況下,我真的認爲你必須在某種物理實驗室環境中模擬硬件和物理連接。即使你可以使用軟件來設置/刪除連接,你也無法判斷它的行爲是否與真正的斷開連接一樣。 – Carsten