• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

强化Visual Studio 单元测试

发布: 2010-6-11 10:04 | 作者: 不详 | 来源: 领测国际采编 | 查看: 82次 | 进入软件测试论坛讨论

领测软件测试网

  #if !NUNIT

  using Microsoft.VisualStudio.TestTools.UnitTesting;

  #else

  using NUnit.Framework;

  using TestClass = NUnit.Framework.TestFixtureAttribute;

  using TestMethod = NUnit.Framework.TestAttribute;

  using TestInitialize = NUnit.Framework.SetUpAttribute;

  using TestCleanup = NUnit.Framework.TearDownAttribute;

  #endif

  我所需要做的就是使用NUnit测试属性改变我的方法为TestMethod,然后我就有一个在两种方式下工作的测试代码。

  TimeOutAttribute

  包含决大部分属性的文档固然非常好。但是,最重要的属性之一,TimeOutAttribute并没有包含在API文档中。当TESTRUNCONFIG 文件允许你指定单元测试的全部超时值时,TimeOutAttribute让你指定一个单独的测试可能花费的最大毫秒数。我发现 TimeOutAttribute在这些联系数据库测试方法上没有价值,所以我密切注视这些查询。请注意,时间值包含一些测试运行器的时间。另外,机器的速度和性能将影响时间。使用你的测试进行实验来看一下时间选择是怎么在你的系统上工作的。

  TestContext类我们只是简要的涉及到,它也是被单元测试向导添加进来的TextContext属性。主要的论述是关于当你正在使用 DataSourceAttribute时通过使用TestContext类获得数据行。TestContext类有很多内容提供。文档显示出 TestContext类标记为抽象,但是事实上支持你的单元测试的源类型是UnitTestAdapterContext,它来自于 Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Adapter.dl,你可以在< Visual Studio .NET install dir>\Common7\IDE\PrivateAssemblies 中发现这个DLL文件。你可以使用.NET Reflector查看UnitTestAdapterContext以此明白它是如何工作的。

  或许这个类支持的最重要的方法就是WriteLine,你可以使用它添加额外的输出到单独的测试结果中。所有的编写都将出现在报告的额外信息部分。为了发现什么测试正在运行或测试开始于什么目录,你可以单个使用TestContext属性域TestName和TestDir。最后,如果你想为所有或部分测试设置时间器,调用TestContext.BeginTimer和TestContext.EndTimer。在标准的控制台输出部分,时间数据将显示在测试运行结果中。

  为你写代码

  我曾经提到,我已经包含了一个连同它的单元测试一起的真正单元。Bugslayer.Utility.DLL是一个我已经在项目之间拖拽的有用代码集合。 ArgParser类是一个命令行论据分析类,这个类是基于在旧的.NET Framework SDK WordCount例子中的类。SystemMenuForm类是一个Windows窗体,这个窗体允许你在系统菜单中附加项目和作为常规时间回应点击操作。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

53/5<12345>

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网