编写测试套件的指南 < > C++编写项目测试套件的最佳实践/指导原则是什么? < P>这是一个非常广泛的问题。对于单元测试和测试驱动开发(TDD),在这方面有一些有用的指导(如果部分内容有些单调的话)——如果不适用,您可以忽略Visual Studio特定的建议

编写测试套件的指南 < > C++编写项目测试套件的最佳实践/指导原则是什么? < P>这是一个非常广泛的问题。对于单元测试和测试驱动开发(TDD),在这方面有一些有用的指导(如果部分内容有些单调的话)——如果不适用,您可以忽略Visual Studio特定的建议,c++,testing,design-guidelines,C++,Testing,Design Guidelines,如果您正在寻找有关系统或性能测试的指导,我将澄清您的问题。在这个问题上有一个相当广泛的理由 有几个单元测试是最好的 在我们结束之前回顾实践。 首先,TDD是一个无价的工具 练习。在所有的发展中 方法可用,TDD是 可能是最有可能 从根本上改善许多人的发展 未来几年,投资将持续增长 最小的任何质量保证工程师都会告诉你 开发人员无法成功编写 没有相应测试的软件。 有了TDD,实践就是写 这些测试甚至在编写 实现和理想的写作 这些测试可以作为一部分运行 一个无人参与的构建脚本。信息技术 养成这种习惯需

如果您正在寻找有关系统或性能测试的指导,我将澄清您的问题。在这个问题上有一个相当广泛的理由

有几个单元测试是最好的 在我们结束之前回顾实践。 首先,TDD是一个无价的工具 练习。在所有的发展中 方法可用,TDD是 可能是最有可能 从根本上改善许多人的发展 未来几年,投资将持续增长 最小的任何质量保证工程师都会告诉你 开发人员无法成功编写 没有相应测试的软件。 有了TDD,实践就是写 这些测试甚至在编写 实现和理想的写作 这些测试可以作为一部分运行 一个无人参与的构建脚本。信息技术 养成这种习惯需要纪律, 但一旦建立起来,编码 如果没有TDD方法,感觉就像 无安全带驾驶

对于测试本身,有 一些额外的主体将 成功测试的帮助:

避免在之间创建依赖关系 测试,以便测试需要在 特定顺序。每个测试都应该是 自主的

使用测试初始化 验证测试清理是否正确的代码 已成功执行并重新运行 在执行测试之前进行清理,如果 他没有跑

在之前编写测试 编写任何生产代码 实施

创建一个测试类 对应于 生产代码。这简化了程序 测试组织并使其易于 选择放置每个测试的位置

使用 VisualStudio生成初始 测试项目。这将大大 在需要时减少所需的步骤数 手动设置测试项目和 将其与生产关联 项目

避免创建其他计算机 相关测试,如测试 依赖于特定的目录 路径

创建要测试的模拟对象 接口。模拟对象是 在测试项目中实现 验证API是否与 必需的功能

核实 之前所有测试都已成功运行 继续创建新的测试。那个 确保修复代码的方法 一旦打破它

最大化 可以运行的测试数 无人看管。绝对确定 没有合理的解释 单独使用前测试溶液 关于手动测试


TDD无疑是一套最佳实践。在改造测试时,我的目标是两件事:代码覆盖率和边界条件覆盖率。基本上,您应该选择函数的输入,以便A)测试所有代码路径,如果测试所有代码路径的所有排列(有时可能是大量情况,如果路径差异表面上是不同的,则实际上不需要),以及B)测试所有边界条件,则效果更好(如果代码中有一个IF x>5,用x=5,x=6来得到边界的两边,则测试代码路径选择的变化)。

您不认为您的问题过于宽泛和含糊吗?考虑将其细化为更具体的问题,请猜猜您是指单元测试,是吗?