编者语: 话说我喜欢变化中的微软,毕竟对于移动互联时代,就需要有多个平台的应用场景,你不能寄望用户都绑在Windows的生态上。微软40年,到了不得不改变的地步了。举个例子像Windows 10 ,现在每个build都在Windows Insider内吸纳了不少意见。还有就是开发工具,你可以通过Visual Studio 2015完成从云到端的开发。(当然我一直觉得Visual Studio 太大,我更喜欢用Sublime去完成服务端的工作,用Xamarin Studio 去完成移动端的开发工作)这个系列的最后一篇文章会说一下关于项目测试和管理的话题。还是那句我是在Mac+Sublime环境下介绍。
一. 单元测试
1.xUnit.net
xUnit.net是基于.NET Framework 的开源测试工具。通过xUnit.net可以针对C#/F#/VB.NET等进行单元测试。ASP.NET 5 更直接把以往的Visual Studio Unit Test Framework 说再见了,而直接使用上了xUnit.net。(https://github.com/xunit/aspnet.xunit)。xUnit.net基于NUnit 。从网站或者官网上,你可以找到不少xUnit的优点,与NUnit和其他测试框架相比有一下一些优势
1)为每个测试方法产生一个对象实例
2)取消了[SetUp]和[TearDown]
3)取消了[ExpectedException]
4)类似于Aspect的功能
5)减少了自定义属性(Attribute)的数目
6)采用泛型
7)匿名委托
8)可扩展的断言
9)可扩展的测试方法
10)可扩展的测试类
了解更多关于xUnit.net可以参考这里(点击打开链接)。
对于ASP.NET 5 , 除了自己开源外还和优秀的开源工具整合,大家可以看看MVC 6的测试过程就是完全整合了xUnit.net 。https://github.com/aspnet/Mvc/tree/dev/test 。
2.在ASP.NET 5 项目中添加xUnit.net
1)创建一个Class Library
2)修改project.json文件,增加xunit,xunit.runner.aspnet的依赖,并为k添加test命令参数
3) 通过kpm restore 去加载相关的库
4)为你的项目写个简单的测试用例
5) 通过k test 去运行,就可以查看测试结果了
你可以通过为你的项目添加不同的测试用例,当然你有一个Visual Studio +TFS效果更佳,但是在Mac/Linux下这样的测试环境也相当好。
无可否认,TFS功能很强大,但是在一些小团队的开发当中版本管理个人比较推崇Git.Git 是一个快速,可扩展的分布式版本控制系统,你可以通过丰富的命令集对内部项目进行访问和维护。在Mac上 ,用Git可以说手到拿来。你可以通过Homebrew或者Xcode的Command Line完成Git的安装。对于Git更多的内容,你可以访问(点击打开链接)
2.Sublime上的Git
不停打命令行虽然B格提升了,但是有一个快速的方式去使用Git也是相当不错的,你可以通过Package安装Git的快速命令方式去使用Git.
你在编码过程中,或者需要对文件,增加或者删除的行有一个了解,那Sublime上的GitGutter也可以帮到你,如图,针对刚才的测试用例新增了一个测试方法,都会有+的提示。
在Sublime上配合插件,整合Git对于编码的效率将会大大提高。当然了Visual Studio 2015更好了(我不是倒微软的米,但是只是个人喜好,喜欢在Mac+Sublime上开发),也不少得TFS(TFS在很早已经整合了Git).
好吧,写到这里就已经差不多把这个入门的系列文章写好了。虽然写的时候是ASP.NET 5 Beta 3,但是不少东西已经成型了。假若正式版本有变化,我都会跟进下去。这里再一次感谢徐磊和善友的微信推广,也感谢那些对系列文章提出意见的人。
.NET跨平台的路走对了,接下来需要大家去努力并壮大。大家一起努力吧!