using X1.Domain.Common;
using MediatR;
using System.ComponentModel.DataAnnotations;
namespace X1.Application.Features.ScenarioTestCases.Commands.CreateScenarioTestCase;
///
/// 创建场景测试用例命令
///
public class CreateScenarioTestCaseCommand : IRequest>
{
///
/// 场景ID
///
[Required(ErrorMessage = "场景ID不能为空")]
public string ScenarioId { get; set; } = null!;
///
/// 测试用例列表
///
[Required(ErrorMessage = "测试用例列表不能为空")]
[MinLength(1, ErrorMessage = "至少需要包含一个测试用例")]
public List TestCases { get; set; } = new();
}
///
/// 场景测试用例项
///
public class ScenarioTestCaseItem
{
///
/// 测试用例流程ID
///
[Required(ErrorMessage = "测试用例流程ID不能为空")]
public string TestCaseFlowId { get; set; } = null!;
///
/// 执行顺序
///
[Range(0, int.MaxValue, ErrorMessage = "执行顺序必须大于等于0")]
public int ExecutionOrder { get; set; } = 0;
///
/// 循环次数
///
[Range(1, int.MaxValue, ErrorMessage = "循环次数必须大于0")]
public int LoopCount { get; set; } = 1;
///
/// 是否启用
///
public bool IsEnabled { get; set; } = true;
}