您的位置:首页 > 其它

使用VSTS进行单元测试

2008-05-11 12:40 288 查看
<script type="text/javascript"><!--
google_ad_client = "pub-1592932103935230";
/* 336x280,csdnblogs, 创建于 08-5-10 */
google_ad_slot = "8315096772";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script> <script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
        以前做单元测试的 时候一直都用Nunit,看着那些绿灯一个接一个的亮起来的感觉特别踏实,后来再照着大大们的提示,装上了TestDriven.NET,把它集成到 IDE中来,用起来更方便了,但是日常工作繁重,能不能自动生成测试代码呢(虽然Nunit也有NUnitPartner之类,但总觉得不太好用),懒人 的我开始把目光投到VSTS自带的测试框架上去,用后深感方便啊.
        只要在需要进行单元测试的代码上右击点"创建单元测试",在点选测试的内容就可以了,如图:

        


        当然也可以对生成的代码做一点小设置,例如是把测试否标记为无结论等等,如图:

         


        下面是一个测试用例的代码:




        /**//// <summary>


        ///IsZero 的测试


        ///</summary>


        [TestMethod()]


        public void IsZeroTest()




        ...{


            int amount = 0; // TODO: 初始化为适当的值


            string currency = string.Empty; // TODO: 初始化为适当的值


            UnitMoney.Money target = new UnitMoney.Money(amount, currency); // TODO: 初始化为适当的值


            bool actual;


            actual = target.IsZero;


            Assert.Inconclusive("验证此测试方法的正确性。");


        }

 [NextPage]

        每个参数都给你初始化了,只要简单的修改就可以运行测试,这个测试框架的方法和Nunit相当相似,上手很方便.

        例如上面测试代码我们大可以改写成:




       /**//// <summary>


        ///IsZero 的测试


        ///</summary>


        [TestMethod()]


        public void IsZeroTest()




        ...{


            int amount = 1; // TODO: 初始化为适当的值


            string currency = "CHF"; // TODO: 初始化为适当的值


            Money target = new Money(amount, currency); // TODO: 初始化为适当的值


            bool actual;


            actual = target.IsZero;


            Assert.IsTrue(actual);


        }

  
或者:




       /**//// <summary>


        ///IsZero 的测试


        ///</summary>


        [TestMethod()]


        public void IsZeroTest1()




        ...{


            Assert.IsTrue(new Money(0, "CHF").IsZero);


        }

  
        都很方便,测试运行查看结果同样方便,如图:
         


        今天小试了一把,以后看来可以深入研究一下这个框架提供其他测试项目:)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息