我不确定如何使用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.
什么都没有印出来,所以我应该怎么写?
答案 0 :(得分:0)
我找到了一种使用system.write()
向控制台输出信息的简单方法。
答案 1 :(得分:0)
DUnitX在TObject上定义了一个类帮助器,它在单元DUnitX.TestFramework中具有几个Log和Status方法。每当此单位在您的使用列表中时,您都可以在 any 对象上调用这些方法,例如,通过以下方式:
uses
DUnitX.TestFramework;
[...]
procedure TMyTestObject.Test1(AValue1, AValue2, _Result: Integer);
begin
self.Log(TLogLevel.Information, 'Information');
end;
之所以可以使用该语法,是因为类助手是向已定义的类添加方法和属性的一种方法。通过在TObject上定义类帮助器,可以扩展所有对象。
班级助手在Embarcadero Wiki中进行了描述:Class and Record Helpers (Delphi)
答案 2 :(得分:0)
必须在创建 TDUnitXConsoleLogger 时禁用安静模式。
logger := TDUnitXConsoleLogger.Create ( False {quietMode} );