写点什么

微软发布新版 Pex 框架,对测试提供了更好的支持

  • 2009-09-22
  • 本文字数:554 字

    阅读完需:约 2 分钟

不久前微软发布了新版本的 Pex 框架,其中的 Moles 组件可用于模拟框架中包括静态成员在内的几乎所有成员,大幅提高了对测试的支持程度。

Pex 是微软研究院构建的自动白盒测试框架,它的目标是让程序员减少手动编写大量单元测试的情况。Pex 允许开发人员编写单独的参数化测试方法,并根据测试方法的逻辑分支自动生成测试数据及 Assert 语句。虽然开发人员还是需要手动编写单元测试,但是 Pex 可以确保对代码进行了充分的测试。

Pex 附带一个迂回框架(Detour Framework) Stubs 。与其他如 Rhino Mocks Moq 框架不同,Stubs 并非使用 Emit 的方式动态创建类型,而是生成类型安全,可重构,可调试的源代码。Stubs 框架会为每个方法生成一个委托类型的成员,开发人员可以通过委托的指定方法的行为。

新版的 Pex 框架中发布了一个名为 Moles 的组件,它可以被看作是 Stubs 框架的扩展,可用于模拟所有的.NET 成员,包括静态方法,非虚方法以及密闭类型。例如,OperationContext.Current 静态属性在 IIS 环境外的情况下总是返回 null,但使用 Moles 之后,测试方法便可以摆脱 IIS 的依赖:

目前 Moles 的功能还不够完整,它不支持对构造函数及外部方法的模拟,以及 mscorlib 中一部分和 CLR 集成过于紧密的类型。

您可以从微软研究院网站上下载 Pex ,更多有关 Pex、Stubs 和 Moles 的信息可参考它们的主页。

2009-09-22 07:252404
用户头像

发布了 157 篇内容, 共 54.5 次阅读, 收获喜欢 6 次。

关注

评论

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

一只黔灵山猴子,溜进「智能世界」

白洞计划

AI

海外云手机实现海外社媒矩阵营销

Ogcloud

云手机 海外云手机 云手机海外版 手机群控 矩阵运营

Endpoint Central终端管理软件适合什么样的IT用户?

Geek_a83400

一个比 Nginx 还简单的 Web 服务器

江南一点雨

火山引擎携手Keep,让线上健身更快更稳

火山引擎边缘云

CDN 健身 CDN加速 CDN技术 CDN带宽

情绪低落难释怀?数业智能心大陆用 AI 来破局

心大陆多智能体

智能体 AI大模型 心理健康 数字心理

中国企业的数智化为何只成功了一半?

新消费日报

VS Code 代码片段指南: 从基础到高级技巧

Immerse

vscode 开发 代码 CODING 开发人生

轻松解锁销售利润!使用淘宝商品关键词搜索API接口

联讯数据

2024年你应该使用的6个JavaScript库

伤感汤姆布利柏

9个JavaScript库,让你早下班2小时

秃头小帅oi

出海浪头之上,共探CDN进化新支力

MasterInTech

NFT/数字藏品开发逻辑,NFT/数字藏品系统开发源码实例

V\TG【ch3nguang】

情感共鸣:数业智能心大陆重塑AI心理交互新纪元

心大陆多智能体

智能体 AI大模型 心理健康 数字心理

华为大咖说丨企业数字化转型如何开展顶层设计?

华为云PaaS服务小智

华为云 企业数字化

我们写的代码是如何被用户看到的——前端篇

阿里技术

前端

亚信安慧AntDB数据库分布式集群在线升级

亚信AntDB数据库

AntDB

对比 Vitess,ShardingSphere 有哪些不同

京东科技开发者

一篇文章讲清楚Java中的反射

不在线第一只蜗牛

Java Python 反射

数据资产新视角 要素化与资产化的双轮驱动

郑州埃文科技

数据治理 数字经济 数据要素

Apache顶级项目ShardingSphere — SQL Parser的设计与实现

京东科技开发者

数博会聚焦:合合信息启信宝践行数据创新应用

合合技术团队

数据 科技 合合信息

AI自动化副业创收班手把手带你提升副业收益

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

测试

MySQL 索引合并优化实践

爱可生开源社区

MySQL 索引

JeecgBoot应用Spring Authorization Server

JEECG低代码

Spring Boot 中的 “依赖管理和自动配置” 详解透彻到底(附+详细代码流程)

EquatorCoco

Java spring 后端

Java ORM 框架指南

FunTester

全球化游戏直播平台设计开发:如何应对不同地区的审美差异?

软件开发-梦幻运营部

“人手一个贾维斯”的愿望,正在被“视频通话”功能带进现实

Alter

【案例分享】如何利用京东云建设高可用业务架构

京东科技开发者

拿起智能体的金箍棒,化身AI天命人

脑极体

AI

微软发布新版Pex框架,对测试提供了更好的支持_.NET_赵劼_InfoQ精选文章