我是一名开发人员,使用 C++/unix 工作。
我们必须为我们添加的任何新代码编写谷歌测试。我觉得这真的需要一些努力。
我们可以自动化单元测试(谷歌测试)吗?我的意思是我们可以有一个自动化脚本,它应该具有创建单元测试套件的智能,并且它应该至少覆盖 70% 的代码。
我知道这应该很困难,但只是想知道这是否可能。如果可能,那么我需要为此学习哪些概念。我认为这是一个长期目标,我可以利用我的空闲时间学习/开发这个。请帮助我并提供一些链接/资源,我可以在其中获得一些基本知识。
我是一名开发人员,使用 C++/unix 工作。
我们必须为我们添加的任何新代码编写谷歌测试。我觉得这真的需要一些努力。
我们可以自动化单元测试(谷歌测试)吗?我的意思是我们可以有一个自动化脚本,它应该具有创建单元测试套件的智能,并且它应该至少覆盖 70% 的代码。
我知道这应该很困难,但只是想知道这是否可能。如果可能,那么我需要为此学习哪些概念。我认为这是一个长期目标,我可以利用我的空闲时间学习/开发这个。请帮助我并提供一些链接/资源,我可以在其中获得一些基本知识。
我认为这个概念从根本上是有缺陷的。
我看不出这样的自动化过程如何在不参考实现该功能的代码的情况下推断出正在测试的功能的意图。如果是这种情况,并且代码有错误,则会自动创建测试以检查错误的结果。
在我看来,更合理的做法是拥有一个自动为每个类和函数创建 gtest 样板文件的过程。因此,例如,对于每个类,它可以创建一个适当命名的测试夹具,并为每个公共函数创建一个测试用例。实际的测试用例可能默认只包含以下内容:
FAIL() << "Test not yet implemented."
像这样的一些工具很可能已经存在。
这与您想要实现的目标相去甚远,但它会消除测试过程中的一些重复性。