写点什么

Pex:来自微软研究院的单元测试工具

  • 2012-11-01
  • 本文字数:585 字

    阅读完需:约 2 分钟

Pex 微软研究院开发的一个Visual Studio 插件与测试工具。它能分析和研究托管代码,并为项目所需的测试给出一些建议。它支持代码契约,该契约用于使用条件(如前置条件、后置条件和不变式)为方法添加注释,代码要正确运行,这些条件必须先通过验证。

在详细分析之后,Pex 会自动添加适当的前置条件以捕获任何无效数据。另一方面,代码契约为改善Pex 所做的分析提供了额外的数据与信息。使用Visual Studio,由Pex 创建的项目支持 MSTest (这是默认的测试框架),也支持其他测试框架(如 NUnit )。

使用参数化测试时需要向参数传递适当的值, Dino Esposito 认为这是一个重大挑战。根据 Dino 的说法,Pex 在动态符号执行技术的帮助下,使用迭代来挽救并帮助开发者选取有意义的输入值。

你可以免费在Web 上使用Pex 。它是Pex power tools for Visual Studio 的简化版,还包含了一些代码谜题。你只需要提供C#、Visual Basic 或F#代码,所有后台工作都是在云中发生的。

Pex 框架仅支持 Visual Studio 2010。不过,如果你用 Visual Studio 2012 工作的话,就需要利用 Microsoft Fakes 框架。

查看英文原文 Pex: Unit Testing Tool from Microsoft Research


感谢朱永光对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2012-11-01 05:223112
用户头像
臧秀涛 略懂技术的运营同学。

发布了 300 篇内容, 共 148.6 次阅读, 收获喜欢 35 次。

关注

评论

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

分布式缓存架构设计和一致性HASH

我们新四军不拿群众一针一线

亚马逊 CTO 预测 2021 将改变世界的八大技术趋势:云加速向边缘推进

亚马逊云科技 (Amazon Web Services)

云计算 AWS

一个HashMap能跟面试官扯上半个小时

安琪拉的博客

Java HashMap底层原理

架构师训练营 1 期 - 第十三周 - 数据应用 2

三板斧

极客大学架构师训练营

思考-国际化系统表结构设计

BerryMew

第十三周 数据应用2 总结

三板斧

极客大学架构师训练营

第十周作业

Jack

Spring源码高级笔记之——Spring AOP应用

Java架构师迁哥

Thread 线程,状态转换、方法使用、原理分析

小傅哥

线程 小傅哥 Thread 七日更 状态流转

瞬间起飞!腾讯大神纯手撸“架构师成手册”网友看完直呼NB!

比伯

Java 编程 架构 面试 计算机

科技抗疫,少年可期,为这群有AI的天使开发者疯狂打call

华为云开发者联盟

人工智能 华为云 modelarts 医疗AI 对象存储服务OBS

注册中心Eureka源码解析

码界西柚

华为大佬亲自手码Dubbo服务暴露源码解析!这次够清楚了吧

比伯

Java 编程 架构 程序人生 计算机

加快你ROS安装的一篇文章

良知犹存

ROS

ModelArts黑科技揭秘|模型智能评估、诊断,让模型来个“体检

华为云开发者联盟

AI 模型 华为云 modelarts 智能诊断

垃圾回收你懂,Java垃圾回收你懂吗?

华为云开发者联盟

Java 虚拟机 存储 对象 垃圾回收

回溯和动态规划解决每次移动一步最终回到原地算法、富兰克林成功要素和狗熊掰棒子、swift多线程编程入门operation John 易筋 ARTS 打卡 Week 31

John(易筋)

ARTS 打卡计划 富兰克林成功要素 狗熊掰棒子 动态规划解决移动回到原地 swift operation

Presto入门

Albert

presto 七日更

Multi-Architecture镜像制作指南已到,请查收!

华为云开发者联盟

Docker Kubernetes 容器 镜像 Multi-Architecture

TypeScript | 第六章:理解声明合并,以及编写声明文件

梁龙先森

typescript 大前端 七日更

笔记|怎样成为高效学习的人

熊斌

学习 个人成长 成长笔记 七日更

到底什么是 CDN

转山转水

CDN

架构师训练营第十周作业

丁乐洪

TypeScript | 第五章:高级类型

梁龙先森

typescript 大前端 七日更

生产环境全链路压测建设历程 20:某快递 A 股上市公司的生产压测案例之彩蛋

数列科技杨德华

全链路压测 七日更

架构师训练营 第十周作业

文江

bit位操作及其算法应用

Skysper

算法 位运算

写技术文章给我带来什么好处?

小林coding

程序人生

如何解决MySQL主从数据库没有同步的问题?

冰河

MySQL 高可用 主从复制

你不得不知道的反射(非常重要)

安琪拉的博客

Java 反射 java反射

工具之书:《账簿与权力》与 GNUCash

lidaobing

GNUCash 28天写作

Pex:来自微软研究院的单元测试工具_语言 & 开发_Anand Narayanaswamy_InfoQ精选文章