zoukankan      html  css  js  c++  java
  • Convert MSTest to Nunit

    今天想在自动集成服务器上用MSTest,但遗憾的是MSTest.exe不能使用目录,命名空间等,因此需要将MSTest转换为Nunit1.

    1. 首先移除MSTest的程序集,引入Nunit.Framework.dll

    2.然后使用如下Ruby脚本.

    all_files= Dir[File.join("D:", "UnitTest/**/**/**")];
    all_files.each { |x|
      if x.to_s().include?(".cs")
        begin
        puts x.to_s
        f = File.open(x.to_s, "r+")
        content=""
        f.each { |line| content+=line }
    
       s=content.gsub(/\[TestMethod\]/, "[Test]").gsub(/\[TestMethod\(\)\]/, "[Test]").
                gsub(/\[TestClass\]/, "[TestFixture]").gsub(/\[TestClass\(\)\]/, "[TestFixture]").
                gsub(/\[ClassInitialize\]/, "[TestFixtureSetUp]").gsub(/\[ClassInitialize\(\)\]/, "[TestFixtureSetUp]").
                gsub(/\[ClassCleanup\]/, "[TestFixtureTearDown]").gsub(/\[ClassCleanup\(\)\]/, "[TestFixtureTearDown]").
                gsub(/\[TestInitialize\]/, "[SetUp]").gsub(/\[TestInitialize\(\)\]/, "[SetUp]").
                gsub(/\[TestCleanUp\]/, "[TearDown]").gsub(/\[TestCleanUp\(\)\]/, "[TearDown]").
                gsub(/\[AssemblyInitialize\]/, ""). gsub(/\[AssemblyInitialize\(\)\]/, "").
                gsub(/\[AssemblyCleanUp\]/, "").gsub(/\[AssemblyCleanUp\(\)\]/, "").
                gsub(/namespace\s+?/,"using NUnit.Framework;\n\nnamespace ")
        f.close
        File.delete(x)
        new= File.new(x, "w+")
        new.puts s
        new.close
        s=""
           rescue =>e
        end
      end
    }
    3. 移除MSTest的部分特性的东西,如TestContext等,这个应该很少了
    然后,就顺利转换成功了
     
     
  • 相关阅读:
    python 模块特点
    python 对象类型有哪些?
    python 异常处理
    python urllib2查询数据
    哈希表之词频统计
    泛型 队列
    大小端存储
    收藏 去掉 html 标签的perl 小函数
    好玩 多线程 显示
    服务器客户端 之 文件下载
  • 原文地址:https://www.cnblogs.com/cnblogsfans/p/1851674.html
Copyright © 2011-2022 走看看