无法从命令行运行数据驱动的Mstest

时间:2019-02-28 05:24:38

标签: c# visual-studio mstest

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

测试的DataSource属性无效。必须指定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
    }

在命令行中运行该测试将对您的帮助大有帮助。

1 个答案:

答案 0 :(得分:0)

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

try
{..  some code..}
Catch (IOException ex)
{... handle IOException (say - wait a minute and try again 10 times)...}
Catch (SqlClientException ex)
{... handle SQL errors Exception (log in a custom table) ...}
Catch (Exception ex)
{... log all other Exception ...}