写点什么

.NET 自动探索式测试工具——Pex

  • 2008-07-20
  • 本文字数:642 字

    阅读完需:约 2 分钟

Pex 是微软研究院的一个白盒测试生成工具。不像我们平时在给定的方法中为每个执行路径手写独立测试,Pex 允许开发人员编写单独的参数化测试方法。这样 Pex 就能生成一套标准的单元测试,在目标方法里测试执行路径。Pex 一个指令一个指令地分析.NET 代码,解释代码执行时的动作,然后“以一种完全自动的方式,计算出那些能触发边角代码的相关测试输入。”

给定一个手写的参数化单元测试,Pex 完全自动地分析代码,来决定相关的测试输入。其结果就是生成一个有着高度代码覆盖的传统单元测试,另外,Pex 还会建议程序员如何去修复所发现的 Bug。

Pex 实际上并没有减少开发人员多少工作量,他们依然需要手写那些定义和覆盖了方法基本行为的单元测试,来确保 API 和函数符合必要用例和用户故事的需求。但是,Pex 可被用作一个附加的方法来确保

测试充分地覆盖这些实现的代码。在方法中识别不确定的行为和错误时,这个自动探索式测试工具尤其有用。

和其他大多数生成工具一样,Pex 在确定的环境下使用效果很好。单元测试驱动(TDD)的设计原则是保持方法简短和可测试,这个原则也让 Pex 生成的测试更为可读。在实现符合 TDD 的设计目标时,Pex 也是很不错的工具,比如如果 Pex 为某方法生成了许多复杂的测试,那么这个方法很有可能需要重构。在方法是以基础类型做参数,而不是自定义的对象时,Pex 的效果也不错。

需要提醒的是,Pex 目前还只是微软研究院的一个试验项目,不会像微软正式产品一样获得支持。不建议将 Pex 作为写单元测试的首要选择,但是它的自动测试生成能有效覆盖边缘的用例。

2008-07-20 21:021489

评论

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

每日一题:LeetCode-105. 从前序与中序遍历序列构造二叉树

半亩房顶

面试 算法 LeetCode 二叉树 Golag

【写作训练营打卡|03】

软件测试/人工智能|一文告诉你Python字符串的相关操作

霍格沃兹测试开发学社

PostgreSQL 技术内幕(十二)CloudberryDB并行化查询之路

酷克数据HashData

谷歌史上最强大模型Gemini抢鲜知!!!

江湖修行

AI Google openai #人工智能 #大模型

利用SEO策略提升网站排名和流量

九凌网络

大模型数据集:探索新维度,引领AI变革

来自四九城儿

inBuilder低代码平台新特性推荐-第十五期

inBuilder低代码平台

低代码

【智问-Askture】降低企业成本,定制一个专属自己的ChatGPT!

伊克罗德信息科技

AIGC 大语言模型

基于Browscap对浏览器工具类优化

不在线第一只蜗牛

浏览器 软件开发 可视化工具

低代码/无代码应用赋能数字化

高端章鱼哥

低代码 数字化 无代码

软件测试/人工智能|一文告诉你Python元组相关操作

霍格沃兹测试开发学社

英特尔研究院将在NeurIPS大会上展示业界领先的AI研究成果

E科讯

【技术人的 2023】 ——我的AI学习之旅年度总结

YoLo

AI

Google排名高的是什么样的页面?

九凌网络

大模型数据集:力量的源泉,进步的阶梯

来自四九城儿

颠覆你的绘图方式!这8款泳道图工具你用过几款

Geek_09ea8e

泳道图 工具推荐

IT外包对中小企业的独特优势

Ogcloud

外包 IT 外包公司 外包项目 IT 运维

FFA 2023 明日开幕,Flink 智能诊断、小红书流批一体实践精彩来袭

小红书技术REDtech

大数据 flink 架构 流批一体

外贸网站关键词布局:提升外贸网站关键词排名的策略

九凌网络

用户案例|Milvus 助力 Credal.AI 实现 GenAI 安全与可控

Zilliz

Milvus Zilliz AIGC credal

分布式基础概念-分布式高可用

派大星

分布式 Java 面试题

企业IT外包的四种类型

Ogcloud

外包 IT 外包公司 外包项目 IT 运维

技术人年度回顾:大模型驱动的变革与影响

熬夜磕代码、

大模型

代币开发:加密货币开发与IDO预售相关指南

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

Java多线程系列5:sleep()

BigBang!

Java多线程

KubeSphere Marketpalce 上新!Databend Playground 助力快速启动数据分析环境

Databend

软件测试/人工智能|HTTPS加密协议,你会多少?

霍格沃兹测试开发学社

泳道图绘制指南!快速掌握流程,轻松规划

Geek_09ea8e

泳道图 高效绘制

大模型数据集:揭秘AI背后的魔法世界

来自四九城儿

Kafka集群调优+能力探底

快乐非自愿限量之名

kafka 架构 集群

.NET自动探索式测试工具——Pex_.NET_Al Tenhundfeld_InfoQ精选文章