写点什么

Galilo 和 MbUnit 发布 3.06 版

  • 2009 年 4 月 02 日
  • 本文字数:1262 字

    阅读完需:约 4 分钟

Gallio 和 MbUnit 发布了 3.0.6 版 Gallio 是一个开放的、可扩展的、(测试框架)中立的自动化测试平台,它提供了.NET 上的公共模型、运行时和工具(例如测试运行工具),任何测试框架都可以使用这个平台。

MbUnit 是.NET 上的一个很受欢迎的高效测试框架,3.0.6 版包括以下改进:

  • 并行运行

MbUnit3.0.6 可以充分利用你的多核处理器。只要给测试用例(test)加上 [Parallelizable] 属性,这个测试用例就可以和同一个测试套件(fixture)中其他拥有该属性的测试用例并行运行。测试套件也可以被标记为 [Parallelizable],这样测试套件也可以和其他拥有该属性的测试套件并行运行。需要注意的是,如果你希望一个测试套件中的所有测试用例都能并行运行,仍然需要手动为每个测试用例添加 [Paralleizable] 属性(我们可能会跟据用户的反馈,在晚些时候添加测试套件或程序集级别的属性)。特别需要注意的是,仅仅为测试用例或测试套件添加 [Parallelizable] 属性,并不意味着它一定会和其他的测试并行运行。基于效率的考虑,我们限制了同时运行测试的线程数量,你可以通过配置并发度来修改这个数量。如果你想让一个测试用例同时运行多个实例,可以考虑使用 [ThreadedRepeat] 属性。

  • 并发度

并发度控制 MbUnit 最多能同时运行多少个测试。默认情况下,这个数值与你的 CPU 个数相同,最小值是 2。

  • 默认超时时间(不兼容的修改)
    在 MbUnit2 和 MbUnit3 的早期版本中,每个测试套件的默认超时时间是 10 分钟,这个是不能更改的。现在我们可以为每个单独的测试用例配置超时时间,默认值还是 10 分钟。- Contact 验证器(不兼容的修改)

Contract 验证器可以简化对 contract 实现的正确性的测试。例如,它可以帮你测试自定义的异常类,验证自定义类型的 Equals 和 GetHashCode 方法是否一致,以及检查 IList 的不变性。这个特性最初出现在 MbUnit3.0.4,并在 3.0.5 中得到了加强,Yann Trévin 做了很多工作使它在 3.0.6 中更完善。我们现在使用一个只读字段来标示 contract 验证器,从而取代了过去使用的自定义属性。这使得代码更具有表达力,但是你必须要升级旧的测试代码。更详细的信息参考: Contract Verifiers Chapter in Gallio Book

  • Xml 数据源

CSV 数据源已经非常流行了。你可能还不知道,在 CSV 的数据行中可以关联元数据,只要添加一列并在该列的第一行写上 [ExpectedException]、[Description] 或者其他的元数据就行了。在 3.0.6 中我们还支持 XML 数据源。

Gallio 也包含了一些改进,比较明显的是:

  • One-Click 调试
    只要点一下“Debug”按钮,Icarus 就可以在调试器中运行测试。它会将 Visual Studio 的调试器附在测试进程上,然后运行测试。
  • 自动加载和自动运行

当测试被重新编译后,Icarus 能够自动重新加载和运行所有已加载的测试。在 3.0.6 中,这个功能只能在设置中修改,在以后的版本中,我们可能会把它放在任务栏里,这样就可以根据需要方便的进行调整。

  • ReSharper 集成
    添加对 ReSharper4.5 beta 的支持,添加对反射 API 的缓存以提高性能。

译者介绍:王瑜珩,ThoughtWorks 咨询师,从事多年.NET 开发,热衷于敏捷开发方法与相关实践。

2009 年 4 月 02 日 20:431194
用户头像

发布了 63 篇内容, 共 21.3 次阅读, 收获喜欢 1 次。

关注

评论

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

架构师和软件架构的理解

周冬辉

【架构思维-学习总结】week01

chun1123

学习 架构 思维方式

Week 01 学习总结:UML图

鱼_XueTr

【架构】— 写在前面的话

不二架构

总结 感悟 极客大学架构师训练营

软件设计方法论

而立斋

学习 思维导图 软件设计 设计实践

01周-就餐卡系统设计

dao

极客大学架构师训练营 实验品

架构设计文档的一些心得

elfkingw

TypeScript:重新发明一次 JavaScript

LeanCloud

Java node.js typescript 大前端

架构师 week 1 作业二

iLeGeND

食堂就餐卡系统设计 UML

Kun

极客大学架构师训练营

for 语句

低级打灰工

sed命令基础

飞翔

Linux 命令行

驳《阿里「Java开发手册」中的1个bug》?

王磊

Java 性能优化 性能

redis线程模型

wjchenge

作业一:食堂就餐卡系统设计

而立斋

食堂就餐卡 最用心

作业二:根据当周学习情况,完成一篇学习总结

晨光

食堂就餐卡系统架构设计

时来运转

极客大学架构师训练营

第一周学习感想

heeeeeeyZ25

数仓系列 | Flink 窗口的应用与实现

Apache Flink

大数据 flink 流计算 实时计算

架构师训练营-第一章 心得总结

Linkin

架构师训练营第一周学习总结

时来运转

极客大学架构师训练营

【练习】食堂就餐卡系统设计

张金峰

极客大学架构师训练营

第一周作业二:架构师第一周上课总结

Geek_10

架构师训练营第一周总结

好名字

总结 极客大学架构师训练营

2020年6月10日 异常、断言和日志

瑞克与莫迪

第一周学习总结

Thrine

架构师是怎样炼成的

彭阿三

架构

第一周作业1-食堂就餐系统设计

Geek_10

食堂就餐卡系统设计

heeeeeeyZ25

直播 | 阿里、快手、Databricks、网易云音乐...国内外大数据大佬齐聚一堂要聊啥?

Apache Flink

大数据 flink 流计算 实时计算

Flink 1.10 Container 环境实战

Apache Flink

大数据 flink 流计算 实时计算

Galilo和MbUnit发布3.06版_.NET_Al Tenhundfeld_InfoQ精选文章