zoukankan      html  css  js  c++  java
  • 单元测试结构

    为了使 Team System 测试工具 能够识别出单元测试,此源代码文件必须位于某个测试项目中,而这个项目是 Visual Studio 解决方案的一部分。在生成此项目或生成整个解决方案时,测试项目将生成到包含可执行单元测试的程序集之中。

    所有单元测试方法都使用 [TestMethod()] 属性进行标记(在 Visual Basic 中则为 <TestMethod()>),并且是 [TestClass()] 类的成员。而这个类又是在 Microsoft.VisualStudio.TestTools.UnitTesting 命名空间中定义的。在生成单元测试时,您可以看到,在所生成文件的开始处的 usingImports 语句中包含有此命名空间。

    单元测试的属性(Attribute 和 Property)

    除了单元测试方法的 [TestMethod()] 属性及其包容类的 [TestClass()] 属性之外,可使用其他属性启用特定的单元测试功能。在这些属性中,最主要的属性有 [TestInitialize()][TestCleanup()]。使用标记有 [TestInitialize()] 的方法对将要在其中运行单元测试的环境的各个方面进行准备;这样做的目的在于为单元测试的运行建立已知的状态。例如,可以使用 [TestInitialize()] 方法复制、更改或创建测试中将要使用的某些数据文件。

    在运行完某个测试后,可通过标记有 [TestCleanup()] 的方法将环境返回到已知状态;这可能意味着需要删除文件夹中的文件,或将某个数据库返回到已知状态。例如,在测试了订单录入应用程序中使用的某个方法后,可将库存数据库重置为初始状态。此外,建议您在 [TestCleanup()] 或 ClassCleanup 方法中使用清除代码,而不要在终结器方法中使用此代码。从终结器方法引发的异常不会被捕捉到,并且会导致无法预料的结果。

    TestContext 属性是测试类的一个重要属性。此属性包含的信息包括:当前正在运行的单元测试的名称、部署目录、日志文件的名称;对于数据驱动型测试,还包括所连接到的数据库。TestContext 属性返回一个 TestContext 实例。

     

  • 相关阅读:
    vue六十五:vuex-getters和vuex-mapGetters
    vue六十四:vuex-mapStore
    vue六十三:vuex的异步处理
    vue六十二:vuex的同步状态管理和调试工具vue-devtools
    vue六十一:使用vuex管理状态示例
    vue六十:电影院售票项目案例之影院页面和使用Better-Scroll实现拖拉滚动
    vue五十九:电影院售票项目案例之详情页面
    vue五十八:电影院售票项目案例之项目吸顶效果
    ingress 413 Request Entity Too Large
    kubeadm搭建K8S集群
  • 原文地址:https://www.cnblogs.com/SFAN/p/2147397.html
Copyright © 2011-2022 走看看