zoukankan      html  css  js  c++  java
  • VSTS 编写测试Test技巧:如何使用Deployment Items在测试类中引用文件,和普通Windows项目不一样哦。 无为而为

    问题来源:

      在测试的时候,通常会使用到各种数据资源,比如:某个XML文件。我们知道在Windows项目中,只要选择设置文件的选项“Copy to Output Directory”为“Copy Always”或者“Copy if Newer”就可以引用,在ASPNet项目使用Server. Map可以引用;在测试项目里面却不是这样的,因为测试的时候,微软的测试程序把你的编译结果Copy到了另外一个地方,但是它包含的编译结果却不是包含了所有的文件,比如你设置为的“Copy Always”的XML文件。假如你测试代码是这样引用的话:

     


    会出现类似下列错误:

     

    Test method EMADataTest.DsRulesTest.GetDataFromWebServiceTest threw exception:  System.IO.FileNotFoundException: 未能找到文件“E:\projects\EMA2006\ConflictCheckforEMA\TestResults\cleo_CMS-CLEO 2006-04-12 18_39_42\Out\DsRulesTestData.xml”。.

     

     解决办法:
    办法1:界面操作就可以搞定哦
            1.先定位到Test View ,选取用到这个数据的测试方法
            2:修改Deployment Items属性,可以添加多个文件,一行一个。




    解决办法2:使用代码方法
    只要添加[DeploymentItem("FileName")]就OK了。其实使用第一种方法最终也会生成这样的代码的。

    /// <summary>

            
    ///A test for GetDataFromWebService ()

            
    ///</summary>


            [DeploymentItem(
    "DsRulesTestData.xml"), TestMethod()]

            
    public void GetDataFromWebServiceTest()

            
    {

             
    //操作
            }

     

    这样,你的代码就不会出错了。

  • 相关阅读:
    MAC配置DNS服务器
    真机IOS8.3以上的文件夹共享
    appium + python的环境配置_windows
    python 的时间与日期
    sublimetext 2 编译文件带input时 提示 EOFError: EOF when reading a line
    cmd无法输入中文解决方案
    配置python学习环境遇到的问题:[Decode error
    monkey初接触
    Android logcat输出中文乱码
    运行 命令框不记录打过的命令,重启后CMD里面是空的.上次打过的命令消失了.
  • 原文地址:https://www.cnblogs.com/cleo/p/373554.html
Copyright © 2011-2022 走看看