Могу ли я написать «параметризованные» тесты в DUnit

Я использую DUnit для тестирования библиотеки Delphi. Иногда я сталкиваюсь со случаями, когда я пишу несколько очень похожих тестов для проверки нескольких входов в функцию.

Есть ли способ написать (что-то похожее) параметризованный тест в DUnit? Например, указание ввода и ожидаемого вывода в подходящей процедуре тестирования, затем запуск набора тестов и получение обратной связи о том, какой из нескольких прогонов теста не удался?

(Изменить: пример)

Например, предположим, у меня было два теста, как это:

procedure TestMyCode_WithInput2_Returns4();
var
  Sut: TMyClass;
  Result: Integer;
begin
  // Arrange:
  Sut := TMyClass.Create;

  // Act:
  Result := sut.DoStuff(2);

  // Assert
  CheckEquals(4, Result);
end;

procedure TestMyCode_WithInput3_Returns9();
var
  Sut: TMyClass;
  Result: Integer;
begin
  // Arrange:
  Sut := TMyClass.Create;

  // Act:
  Result := sut.DoStuff(3);

  // Assert
  CheckEquals(9, Result);
end;

У меня может быть даже больше таких тестов, которые делают одно и то же, но с разными исходными данными и ожиданиями. Я не хочу объединять их в один тест, потому что я хотел бы, чтобы они могли пройти или потерпеть неудачу независимо.

Ответы на вопрос(4)

Ваш ответ на вопрос