写点什么

NUnit 2.5 版本发布

  • 2009-05-09
  • 本文字数:1100 字

    阅读完需:约 4 分钟

尽管只是一个小的版本号变化(前一个版本是 2.4.8),NUnit 2.5 经过将近一年的开发后,提供了许多全新的功能。身为 NUnit 的开发者和 咨询师,Charlie Poole 撰写了一篇 Top 10 特性列表

原因 1:数据驱动测试。 测试方法可能需要参数和数据,它们可能以多种方式提供:内联、来自另外一个独立的方法或类、任意方式。该特性提供了一个简洁的方法,用之表述一组实例,以在运行中的单个测试用例中使用。
原因 2:原则。 传统的、基于实例的测试允许你选择一组或多组值,用于测试类似程序。而另一方面, 原则允许你表述一般化的要求,可以编写一个测试,能够通过传递给它的任何值,只要这些值满足约束条件。
原因 3:内联期望异常测试。 引入 Assert.Throws 断言方法、以及更强大的约束表达式 Throws.Exception,**Throws.InstanceOfThrows.TypeOf之后,异常测试逻辑现在可以移入到任何测试、或是其他必要的断言之中了。
原因 4:泛型支持
原因 5:Lambda 表达式支持。**
原因 6:进程外执行和运行时选择。NUnit 2.5 扩展了 AppDomain 的隔离方式,以在一个或多个隔离进程中运行。除了提供隔离之外,这还允许测试使用的.NET 运行时与 NUnit 正在运行的.NET 运行时不同。
原因 8:源代码显示。在 Gui 的错误与失败标签页中,新的堆栈跟踪显示可以展示出发生问题的源代码,只要源代码可以访问,并且程序的编译带有调试信息。目前,支持 C#语法着色。

版本发行说明中提供了更多细节,并介绍了其他特性。

Simone Busoli 指出:新的约束条件模型具备很强的表达能力。此外,他还喜欢新的断言和用来定制这些断言的修饰符。他特别指出:“让修饰符可用于内联方法,这可真不错。因为在非常多的时候,你要比较两个对象的包含或是相等关系,而且你希望重写这些对象在特定领域中相等的概念。”

Olof Bjarnason 发现新的Timeout 属性在开发循环相关代码时非常有用。过去,当编写的无限次循环中出现错误时,你必须杀掉NUnit 进程。现在用Timeout 属性就可以中止测试了。

另外,Jamie Cansdale 也发布了新版本的 TestDriven .NET ,该工具允许开发人员在 Visual Studio 中运行自己的 NUnit(以及其他框架)。

Charlie 承诺:未来将会回归到更小的版本号、更频繁的发布方式。 NUnit 3.0 路线图(pdf 格式)中承诺支持更多的测试运行器(包括Web 运行器,可以从Web 服务器中执行测试)。测试引擎层将支持分布式与并行测试运行方式,乱序测试以及事务式测试行为。

其他.NET 单元测试工具还有: MBunit CSUnit xUnit.Net NBehave Gallio ,Gallio 是一个开放、可扩展的、中立的测试运行器,设计者希望它支持所有的.NET 测试工具。

查看英文原文: NUnit 2.5 had been Released

2009-05-09 22:221842
用户头像

发布了 479 篇内容, 共 163.1 次阅读, 收获喜欢 52 次。

关注

评论

发布
暂无评论
发现更多内容

新闻网站封锁AI爬虫 AI与新闻媒体博弈继续

郑州埃文科技

AI 爬虫

工作两年涨薪40%,揭秘我的学习之路!

霍格沃兹测试开发学社

一次性搞定多任务!Python自动化复用浏览器技巧大揭秘

测试人

软件测试

2024-03-06:用go语言,每一种货币都给定面值val[i],和拥有的数量cnt[i], 想知道目前拥有的货币,在钱数为1、2、3...m时,能找零成功的钱数有多少? 也就是说当钱数的范围是1~

福大大架构师每日一题

福大大架构师每日一题

浪潮信息边缘服务器支持英特尔第五代至强处理器

财见

自动化测试的痛点与发展趋势

老张

DevOps 自动化测试

[自研开源] 用Docker部署 MyData v0.7.1

LIEN

开源 数据集成 业务融合 API对接 mydata

企业数据内控安全就用行云防水堡!不容错过!

行云管家

数据安全 数据泄露 企业数据 防水堡

下一代积木式智能组装编排,集成开发效率10倍提升

华为云开发者联盟

开发 华为云 华为云开发者联盟 DTSE Tech Talk

【FAQ】HarmonyOS SDK 闭源开放能力 —Map Kit

HarmonyOS SDK

HarmonyOS

【愚公系列】2024远控性能大解密!5款评价最高远控软件ToDesk、TeamViewer、向日葵、Parsec、AirDroid谁与争锋?

愚公搬代码

网络安全审计是什么意思?与等保测评有什么区别?

行云管家

网络安全 等保测评 网络安全审计

分享一个能让你的研发效率提升超过20%的工具

华为云开发者联盟

开发 华为云 华为云开发者联盟 华为云CodeArts

测试人生 | 工作两年涨薪40%,揭秘我的学习之路!

测吧(北京)科技有限公司

测试

模型驱动测试引领测试开发新风向

霍格沃兹测试开发学社

MySQL数据库中SQL语句分几类?

小魏写代码

从Language Model到Chat Application:对话接口的设计与实现

阿里技术

application Language 设计与实现 对话接口

5月17-19日 上海线下 · CSP直通车训练营 · CST导师亲授【名额有限,先到先得】

ShineScrum

ScrumMaster 敏捷教练认证 上海线下、 Scrum专业认证

【教程】无法验证app需要互联网连接以验证是否信任开发者

雪奈椰子

抖音详情API:视频内容获取与解析技巧

技术冰糖葫芦

API 接口

App原生开发:iOS和Android平台的比较(看这一篇就够了)

天津汇柏科技有限公司

软件开发 APP开发 小程序开发 软件开发定制

新学期提效神器汇总!男大女大们准备好了吗?

飞桨PaddlePaddle

百度 BAIDU 百度飞桨 AI应用 飞桨星河社区

Android Input底层机制

江湖修行

android 大前端 移动端 系统源码

利用1688商品详情API:快速获取商品信息的技巧与策略

技术冰糖葫芦

API 接口

软件测试工作两年涨薪40%,揭秘我的学习之路!

测试人

软件测试

大模型在产品原型生成中的应用实践

得物技术

大前端

如何简化 Kubernetes 出入向流量管理

NGINX开源社区

Kubernetes Ingress Controller NGINX PLUS NGINX Service Mesh mTLS

INSERT...SELECT语句对查询的表加锁吗

GreatSQL

greatsql

NUnit 2.5版本发布_研发效能_Mark Levison_InfoQ精选文章