iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 24
0

當我拿別人寫好的library使用,想說來試看看有沒有連線成功,所以就寫一個測試連線有沒有成功的Unit Test,結果發現...完全不能work!!!


當使用別人的library,我的專案可以正常運作,怎麼Unit Test卻不行了呢?
總是出現這樣的錯誤訊息:
https://ithelp.ithome.com.tw/upload/images/20171228/201038266fabEgTb5L.png

東找找西找找,從NuGet那邊看看,在輸出那裡找找,就是沒有看到這隻臭蟲蟲。
忽然想到,輸出不是有很多選項嗎?那我每個都看看。於是乎我把所有的「輸出」訊息清空,在重新找找,終於被我在「測試」找到錯誤訊息了:
https://ithelp.ithome.com.tw/upload/images/20171228/20103826Jnqym5xi8S.png

原來是我的Project是使用X64來做編譯,但是測試的設定是X86(此範例沒有顯示出錯誤的DLL)。但是要在哪邊設定呢?
後來也有人跟我犯了一樣的白痴問題:github上的提問。看來只要在VS上面設定一下就好了,咱們來試看看吧!

一般來說,我們會直接使用「測試」的功能,但這樣就掉入陷阱,因為預設是使用X86,而我們現在的專案是X64。
https://ithelp.ithome.com.tw/upload/images/20171228/20103826dtsC14sMaQ.png

首先要做的是,把測試的環境變成「X64」,所以在「測試」底下的「測試設定/預設處理器架構」,中勾選「X64」,原本的是使用X86。
https://ithelp.ithome.com.tw/upload/images/20171228/201038262cFZ451nSQ.png

勾選完之後,再執行一次測試,會發現....怎麼還是錯的!!
這時候就是需要重新建置方案拉!
https://ithelp.ithome.com.tw/upload/images/20171228/20103826GHFiOhuVly.png

重建完之後,執行測試就可以正常囉!
https://ithelp.ithome.com.tw/upload/images/20171228/20103826DsRlZnNj3R.png

看到這個後,就會跑出我們的測試結果~
恭喜!!
(這個死小孩害我找了好久....)


可以參考網站:http://www.alteridem.net/2016/10/20/nunit-visual-studio-adapter/
這篇寫的很仔細呢!


上一篇
【Day 23】(待續)
下一篇
【Day 25】小範例(待續)
系列文
【Unit Test】Unit Test with C#31

尚未有邦友留言

立即登入留言