You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MSTest测试用例参数化:如何为测试用例命名?

为MSTest数据驱动测试用例命名的方法

在MSTest框架中,你可以通过给[DataRow]属性添加DisplayName参数,为每个数据驱动的测试用例指定自定义名称,让测试结果更易读。

修改后的代码示例:

[TestClass]
public class RegressionTests
{
    [DataRow(SendProposalRequest.systemError, false, 110, SystemValidations.SystemErrorText, DisplayName = "验证系统错误场景(错误码110)")]
    [DataRow(SendProposalRequest.proposalError, false, 22, SystemValidations.PTErrorText, DisplayName = "验证提案错误场景(错误码22)")]
    [DataRow(SendProposalRequest.financeError, false, 22, SystemValidations.FTErrorText, DisplayName = "验证财务错误场景(错误码22)")]
    [DataRow(SendProposalRequest.noFinance, false, 53, SystemValidations.noFinanceErrorText, DisplayName = "验证无财务信息场景(错误码53)")]
    [DataRow(SendProposalRequest.annualMileage, false, 22, SystemValidations.annualMileageErrorText, DisplayName = "验证年度里程错误场景(错误码22)")]
    [DataRow(SendProposalRequest.loanAmountBoth, false, 33, SystemValidations.loanAmountBothErrorText, DisplayName = "验证贷款金额双项错误场景(错误码33)")]
    // 注:原代码中重复了提案错误的DataRow,可根据实际需求保留或删除
    [DataRow(SendProposalRequest.proposalError, false, 22, SystemValidations.PTErrorText, DisplayName = "验证提案错误场景(重复用例)")]
    [DataTestMethod]
    public void ValidationTests(string requestType, bool valid, int errorCode, string errorText)
    {
        TestSetup.TestSetupMethod(requestType, valid, errorCode, errorText);
    }
}

说明:

  • 每个[DataRow]的DisplayName参数值就是该测试用例的自定义名称,会在测试运行器(如Visual Studio测试资源管理器)中显示。
  • 命名时建议包含测试场景的核心信息(如错误类型、错误码),方便快速定位测试结果。

内容的提问来源于stack exchange,提问作者kieranm007

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 04:15:20