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; }