阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

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:222530
用户头像
臧秀涛 略懂技术的运营同学。

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

关注

评论

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

率先布局 RWA 赛道,PoseiSwap 成为最具先进性的 DEX

BlockChain先知

Java程序性能分析:内存

javalover123

Java 性能优化 性能 性能分析 性能监控

Linux系统Tomcat安装与配置。

百度搜索:蓝易云

tomcat Linux 运维 云服务器 云服务器ECS

Ubuntu、CentOS修改时区、设置24小时时间格式教程。

百度搜索:蓝易云

云计算 Linux ubuntu centos 运维

架构师的核心工作:价值放大

高鹏

Java 深度思考 架构 架构师

AI写代码靠谱吗?

石云升

ChatGPT AI编码

代码随想录 Day13 - 栈与队列(下)

jjn0703

率先布局 RWA 赛道,PoseiSwap 成为最具先进性的 DEX

威廉META

率先布局 RWA 赛道,PoseiSwap 成为最具先进性的 DEX

鳄鱼视界

OpenTiny 前端组件库正式开源啦!面向未来,为开发者而生

OpenTiny社区

开源 前端 UI组件库

率先布局 RWA 赛道,PoseiSwap 成为最具先进性的 DEX

股市老人

业务系统技术债治理终极指南

高鹏

Java 架构

机器学习洞察 | 分布式训练让机器学习更加快速准确

亚马逊云科技 (Amazon Web Services)

机器学习 分布式

六月更新 | MeetingOps:让有效协作与高效会议共同发生在云端

CODING DevOps

C++中set的用法学习

智趣匠

Last Week in Milvus

Zilliz

云服务 非结构化数据 Milvus Zilliz zillizcloud

一些有用的资料

Joseph295

Centos8升级到Centos 8 stream教程。

百度搜索:蓝易云

Linux 运维 服务器 云服务器 ECS

神州数码:我们和阿里云是市场和技术的共同体

新云力量

云计算 阿里云 神州数码

【HDC.Cloud 2023】华为云区块链分论坛内容值得再读!

华为云PaaS服务小智

云计算 软件开发 华为云 华为开发者大会2023

面向大模型的存储加速方案设计和实践

Baidu AICLOUD

数据湖 大模型 并行文件系统 缓存加速

Istio与Mcp Server服务器讲解与搭建演示

谐云

istio

权衡矩阵-《敏捷实战-破解敏捷落地的60个难题》读后感

Bruce Talk

websocket和http有什么不同?以及websocket协议如何实现?

百度搜索:蓝易云

Linux 运维 HTTP websocket

支付宝小程序云产品发布会:6大产品20项亮点全揭秘

陈橘又青

小程序 云开发

2023-07-10:Kafka如何做到消息不丢失?

福大大架构师每日一题

福大大架构师每日一题

率先布局 RWA 赛道,PoseiSwap 成为最具先进性的 DEX

EOSdreamer111

率先布局 RWA 赛道,PoseiSwap 成为最具先进性的 DEX

大瞿科技

Linux系统下如何在防火墙开放指定端口

百度搜索:蓝易云

Linux 运维 服务器 云服务器 运维、

Linux查看进程PID的方法?

百度搜索:蓝易云

Linux 运维 云服务器 PID 虚拟主机

什么是区块链?| 社区征文

TiAmo

区块链 以太坊 年中技术盘点

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