gpt4 book ai didi

c++ - 在 Visual Studio native 单元测试中,是否可以将单元测试耦合到项目中?

转载 作者:搜寻专家 更新时间:2023-10-31 01:28:53 25 4
gpt4 key购买 nike

我有一个解决方案,有三个项目

Solution
-Project 1
-Project 2
-Project 3

最近想实现单元测试(或集成测试)以确保一切正常,我有使用 CppUTest 的经验,但想看看 VS 必须提供的任何东西是否可以为此目的“更好地”集成。

所以我遵循了指南,它引导我进行了另一个项目。

-单元测试项目(又名项目 4),从外观上看只是一个类。

Solution
-Project 1
-Project 2
-Project 3
-Project 4 (Unit test, testing Project 1)

所以我想知道维护单元/集成测试环境的良好做法是什么?

可能是……

一个单元测试项目,多个单元测试类,每个项目一个

Solution
-Project 1
-Project 2
-Project 3
-Project 4 (Unit test, testing Project 1, 2 and 3)

每个工作项目一个单元测试项目一个单元测试项目,多个单元测试类,每个项目一个

Solution
-Project 1
-Project 2
-Project 3
-Project 4 (Unit test, testing Project 1)
-Project 5 (Unit test, testing Project 2)
-Project 6 (Unit test, testing Project 3)

只需将单元测试类应用于现有项目(不确定是否可能)

Solution
-Project 1
-Code
-Unit Test
-Project 2
-Code
-Unit Test
-Project 3
-Code
-Unit Test

第三种可能吗?

最佳答案

与接受的答案相反,我会说一定要将您的测试代码放入一个单独的项目中。创建单个或多个测试项目是见仁见智的事情,但有充分的理由不将测试代码放入发布代码中。

主要原因是您不想将单元测试库链接到发布代码。这在我的书中是完全不能接受的,据我所知,Visual Studio 有一个明确的“1 个项目 = 1 个库”方法,所以我看不出你如何避免这种情况。

每个项目使用一个单元测试库意味着您可以开发独立于其他项目的项目,并且您可以轻松指定要运行的测试,而不必为整个解决方案运行测试。您甚至可以设置连续测试,以便在您编写代码时更快地获得有关代码的反馈(实际上不确定是否有人在为 C++ 工作,至少对于托管语言来说这很常见)。

此外,如果您使用的是 Microsoft 的单元测试框架,则可以只使用模板 they provide这也迫使您为测试创建一个单独的项目。

关于c++ - 在 Visual Studio native 单元测试中,是否可以将单元测试耦合到项目中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51000950/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com