是否可以使用 cxxunit或任何其他单元测试框架(不包括 QtTestLib )来测试 qt 小部件?
如果是,那么还有两个问题:
- 如何?
- 由于我正在使用 valgrind 运行单元测试,这会报告一些错误吗?
最佳答案
是的,这应该是可能的。我不确定具体的 cxxunit,但理论上是可能的。
- 要正确测试 Qt 对象,您可能需要在全局设置和拆卸函数中创建/销毁 QApplication 对象。除非您专门测试 QApplication 功能,否则您应该只为测试应用程序的整个运行创建一个。这将允许您测试小部件的部分逻辑,但不容易测试小部件的外观或 UI 交互性。此外,测试某些项目可能依赖于运行应用程序的事件循环,这会更加困难。
- Valgrind 可能会报告一些错误。它还可能会报告 Qt 代码的错误,特别是留给应用程序拆卸以回收的静态分配。
关于c++ - 使用 cxxtest 框架和 valgrind 测试 qt 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4268809/