关闭

简述用VS Team Edition进行单元测试

发表于:2011-7-22 13:30

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:51Testing软件测试网采编

  文件包含影响测试运行方式的配置信息。例如,本例中可以为需要测试的代码定义代码覆盖率。运行测试结果和代码覆盖率信息,如图7所示。

图7. 代码覆盖率

  在图5显示的测试列表执行中,Subtract方法被完全覆盖,但是Add方法却没有。通过VisualStudioTest菜单的SelectActiveTestRunConfiguration选项可以创建并使用多个不同的。testrunconfig文件。

图8 测试目录

  如图8所示,每个测试运行结果都存储在TestResults目录的子目录内对应的扩展名为。trx的文件中。。trx文件名和子目录名默认为计算机名、用户名、测试运行的时间戳,不过它们都可以更改。如图9所示,打开显示。trx文件的测试结果窗口,从中可以看到测试运行结果,还能对测试结果进行管理。

图9 测试结果

  建立正确的测试环境

  每个测试运行子目录都包含一个Out目录,测试和被测试代码的运行结果都位于其中。它们可能是重要文件,例如执行测试代码相关的部署。例如,在图6中可以找到Deployment选项卡,该选项卡提供了这项功能。另外,更具粒度的方法是在测试方法上使用DeploymentItem属性,该属性需要一个部署项。

  以下是代码片段:
  [TestClass]
  publicclassMoreUnitTests
  {
  [DeploymentItem(“people。xml”)]
  [TestMethod]
  publicstringGetPersonIDFromFileTest()
  {
  stringname=“Bob”;
  intexpectedid=1;
  //GetPersonIDFromFile方法从指定位置读取people.xml
  intactual=
  MyUtils.DataAccessLayer.GetPersonIDFromFile(name);
  Assert.AreEqual(expected,actual);
  }
  }

  另外,还有一些用于帮助建立基于测试或测试组环境的功能。当然,这需要创建和安装数据库,因为数据库是测试方法的交互对象。在图6中可以注意到“SetupAndCleanupScripts”选项卡,该选项卡提供在一组测试运行之前或之后运行脚本的功能。例如,这些脚本可以建立和清除数据库。另一个实现方法是定义带有特殊标注属性的方法。一对标注了AssemblyInitialize/AssemblyCleanup属性的方法会在测试程序集运行之前/后执行。一对标注了ClassInitialize/ClassCleanup属性的方法会在测试类运行之前/后执行。一对标注了TestInitialize/TestCleanup属性的方法会在测试类的每个测试方法运行之前/后执行。如下代码说明如何在一组测试运行之前建立数据库,之后再将其清除。

43/4<1234>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号