VS2017C++單元測試

0、歡迎食用

  • 但願對點進來的你有所幫助。
    全文記流水帳,心裏想法如示例項目名稱。

一、創建需測試的項目

  • 新建項目
  • 正常書寫.h 和.cpp文件


二、新建單元測試

  • 右擊解決方案 -> 添加 -> 新建項目
    Visual C++ -> 測試 -> 本機單元測試項目
  • 點擊肯定出現

三、添加被測項目的引用

  • UnitTest1(我的單元測試項目名稱,下同) -> 右擊引用 -> 添加引用 -> 勾選被測項目

四、編寫測試代碼

  • 修改unittest1.cpp

五、運行測試

  • 測試 -> 運行 -> 全部測試

六、boom

  • 你覺得這樣就成功了?天真。
    html

  • 解決

    • 右擊UnitTest1 -> 屬性
      連接器 -> 輸入 -> 附加依賴項 -> 編輯
    • 添加附加依賴項
      • 注意添加的依賴項爲被測試類的.obj,不知道的話能夠本身翻一下目錄。

七、運行結果

  • 終於成功了

八、再次boom

  • 就這樣高枕無憂了?天真。
    在測試數獨項目的時候,因爲被測試的類引用了別的類,而後又boom。
  • 再次解決

    • 法一:根據報錯信息添加對應依賴項
      • 右擊UnitTest1 -> 屬性
        連接器 -> 輸入 -> 附加依賴項 -> 編輯
      • 嫌麻煩的話能夠只在這裏寫xxx.obj,而後點擊
        連接器 -> 常規 -> 附加庫目錄 -> 編輯
        選擇xxx.obj對應目錄便可
    • 法二:改添加靜態庫(若是有的話。添加以前最好都先翻一下目錄看看有啥)
      • 右擊UnitTest1 -> 屬性
        連接器 -> 輸入 -> 附加依賴項 -> 編輯

        注意這裏的Debug和法一中的Debug不是同一個文件夾呀。

九、插播OpenCover插件配置

  • 亂七八糟找了好多都不知道用。github翻這裏。看README裏面最後也推薦NuGet,那個Alternatively還特地加粗了,果真好用。不聽老人言,吃虧在眼前。血淚史啊。
  • 具體配置過程
    • 工具 -> NuGet包管理器 -> 程序包管理控制檯
    • 這裏的命令複製一下。
    • 對,就是那個橙色的複製按鈕點擊一下,而後在上面提到的程序包管理控制檯粘貼回車。

十、參考資料

相關文章
相關標籤/搜索