我有一个使用 DUnit 框架的应用程序的单元测试项目。这个项目有一个被 a 包围的单元,$IFDEF
用于在 xml 文件中输出测试结果,而不是 gui 或只是命令行。XML_OUTPUT 定义通过切换构建配置启用。
program DelphiCodeToDoc_Tests;
uses
TestFramework,
TextTestRunner,
Sysutils,
Forms,
GUITestRunner,
{$IFDEF XML_OUTPUT}
XmlTestRunner2 in 'DUnit_addon\XmlTestRunner2.pas',
{$ENDIF}
DCTDSetupTests in 'IntegrationTests\DCTDSetupTests.pas',
...
这完美地工作。当我从 IDE 向该项目添加一个新单元时,问题就开始了(一个带有“文件>新建>单元”的新单元)。
测试项目现在是:
uses
TestFramework,
TextTestRunner,
Sysutils,
Forms,
GUITestRunner,
DCTDSetupTests in 'IntegrationTests\DCTDSetupTests.pas',
...
MyNewUnit in 'IntegrationTests\MyNewUnit.pas';
如您所见,测试 XML_OUTPUT 消失了……每次我添加一个单元时,Delphi IDE 都会删除该测试。
你知道为什么以及如何避免它吗?