1

我是 C# 测试的新手。我正在为 Web 服务测试编写单元测试。我添加了对 C# 单元测试解决方案的服务引用,并开始使用 Web 服务中的类进行测试。我还添加了一个 Excel 文件来提供单元测试值。

下面是一个关于我之前在做什么的例子

[DataSource("System.Data.Odbc"
 ,"Dsn=Excel Files;dbq=|DataDirectory|\\TestData.xlsx;defaultdir=C:\\TestData;driverid=1046;maxbuffersize=2048;pagetimeout=5"
 ,"Sheet1$"
 ,DataAccessMethod.Sequential)
 ,DeploymentItem("TestProject1\\TestData.xlsx")
 ,Owner("")
 ,Description("")
 ,TestMethod()]
public void test1()
{
    try
    {
        var Service = new Service.ServiceClient();
        var Cid = testContextInstance.DataRow["CId"].ToString();
        var MNumber = testContextInstance.DataRow["MNumber"].ToString();
        var VID = testContextInstance.DataRow["VID"].ToString();
        var isVisit = new Service.ISVisit()
        {
            CID = Cid,
            MNum = MNumber,
            VCode = VID
        };

    var first = Service.Medis(isVisit).Cast<Service.ISMedi>().FirstOrDefault();
    // Assert
    Assert.AreEqual("12345678", first.Proc.ProcID);
    }
    catch (Exception ex1)
    {
        if (ex1.InnerException != null)
            Debug.WriteLine(ex1.InnerException.Message);
        Assert.Fail(ex1.Message);
    }
}

.Medis() ,IsVisit` 是服务中的类。我正在使用 excel 表为 untitest 提供值。

在此处输入图像描述

并且单位通过

在此处输入图像描述

现在的要求是将此测试结果按此顺序导出到 Txt 文件或 CSV 或 Excel 文件

测试 1:测试结果 + 持续时间 + 输出肥皂消息。

测试 2:测试结果 + 持续时间 + 输出肥皂消息。

测试 3:测试结果 + 持续时间 + 输出肥皂消息。

请帮我解决一下这个。我正在使用 Visual Studio 团队系统编写 unittests 。

4

1 回答 1

2

有几个选项可用。

Visual Studio 为每个测试运行生成一个 XML 结果集(所有测试在一次执行中运行)。结果放置在解决方案根目录的 TestResults 文件夹中,文件扩展名为 TRX。测试运行将包含测试的持续时间和状态,但不包含 SOAP 响应。如果这足够,您可以使用简单的 XSLT 转换将 XML 转换为 CSV。或者,您可以直接从 Visual Studio 中将测试结果导出为 CSV——测试结果窗口有一个小图标,用于导入/导出测试结果。

如果您需要 SOAP 响应,Visual Studio 在测试运行程序中没有任何本机内容。最好的办法是在测试运行时附加到日志文件,尽管您记录的内容(包括测试持续时间)取决于您。

于 2012-10-16T03:34:12.970 回答