使用tdunitx.currentrunner.log时没有log uput



我不确定如何使用dunitx将某些字符串输出到控制台窗口中,所以这是我的尝试:

unit Unit1;
interface
uses
  DUnitX.TestFramework;
type
  [TestFixture]
  TMyTestObject = class(TObject)
  public
    // Sample Methods
    // Simple single Test
    // Test with TestCase Attribute to supply parameters.
    [Test]
    [TestCase('TestA','1,2,3')]
    [TestCase('TestB','3,4,7')]
    procedure Test1(AValue1, AValue2, _Result : Integer);
  end;
procedure TMyTestObject.Test1(AValue1, AValue2, _Result: Integer);
begin
  TDUnitX.CurrentRunner.Log(TLogLevel.Information, 'Information');
end;
initialization
  TDUnitX.RegisterTestFixture(TMyTestObject);
end.

什么都没打印,所以我应该写这个?

我找到了一种简单的方法,可以使用system.write()

dunitx在单位dunitx.testframework中使用几个日志和状态方法的对象上定义了类辅助辅助器。每当本单元在您的用途列表中时,您都可以在 aish 对象上调用这些方法,例如以下方式:

uses
  DUnitX.TestFramework;
[...]
procedure TMyTestObject.Test1(AValue1, AValue2, _Result: Integer);
begin
  self.Log(TLogLevel.Information, 'Information');
end;

语法工作是因为类助手是将方法和属性添加到已经定义的类的方法。通过在对象上定义类助手,所有对象都可以扩展。

类助手在Embarcadero Wiki中描述:类和记录帮助者(Delphi(

创建tdunitxconsolelogger时,必须禁用安静模式。

logger := TDUnitXConsoleLogger.Create ( False {quietMode} );

相关内容

  • 没有找到相关文章

最新更新