【问题标题】:Unable to run data driven Mstest from command line无法从命令行运行数据驱动的 Mstest
【发布时间】:2019-03-06 17:52:57
【问题描述】:

我正在尝试从命令行运行 mstest。当我使用命令行运行它时,出现以下错误。

测试的数据源属性无效。 DataSourceSettingName 或 ConnectionString 和 TableName 必须指定且不能为空。

0/1 个测试通过,1 个无法运行

这是一个数据驱动的测试,使用电子表格中的数据多次运行 who 测试。

令人惊讶的是,当我从 Visual Studio IDE 运行它时,我能够运行测试并获得结果。它只是从命令行我面临这个问题。

下面是我的测试结果

[TestMethod]
    [TestCategory("APITests")]
    [DataSource("System.Data.Odbc",
    "Dsn=Excel Files;" +
    "Driver={Microsoft Excel Driver (*.xls)};" +
    "dbq=|DataDirectory|\\APITestData.xls;" +        
    "defaultdir=.;" +
    "driverid=790;" +
    "maxbuffersize=2048;" +
    "pagetimeout=5;" +
    "readonly=true",
    "APITestData$", 
    DataAccessMethod.Sequential)]
    [DeploymentItem("APITestData.xls")]
    public void PostAndValidateAPITests()
    {
        //UNIT TEST CASE CODE
    }

非常感谢您在命令行中运行测试的任何帮助。

【问题讨论】:

    标签: c# visual-studio mstest


    【解决方案1】:

    您是否尝试根据您的数据源将参数添加到您的测试中? 我认为您的测试方法描述符中有 5 个参数:

    [TestMethod]
    [TestCategory("APITests")]
    [DataSource("System.Data.Odbc",
    "Dsn=Excel Files;" +
    "Driver={Microsoft Excel Driver (*.xls)};" +
    "dbq=|DataDirectory|\\APITestData.xls;" +        
    "defaultdir=.;" +
    "driverid=790;" +
    "maxbuffersize=2048;" +
    "pagetimeout=5;" +
    "readonly=true",
    "APITestData$", 
    DataAccessMethod.Sequential)]
    [DeploymentItem("APITestData.xls")]
    public void PostAndValidateAPITests(var Odbc, var param, var isReadonly, var API, var accessMethod)
    {
        //UNIT TEST CASE CODE
    }
    

    【讨论】:

    • 感谢您就此事回复我。我尝试了所有选项。最终起作用的是 vstest.console.exe 并得到了结果。仍然无法弄清楚为什么 mstest.exe 不起作用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-29
    • 1970-01-01
    • 1970-01-01
    • 2011-05-30
    相关资源
    最近更新 更多