HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

BDD 工具 SpecFlow 版本 2 支持并行执行

  • 2016-02-01
  • 本文字数:889 字

    阅读完需:约 3 分钟

行为驱动开发(BDD)工具 SpecFlow 的最新版本支持以并行方式执行测试,并添加了对 xUnit 2.0 和 NUnit 3.0 的支持。最新发布的版本 2 同时升级至新的 Gherkin 3 解析器,后者目前几乎已应用在所有 Cucumber 工具中了。

InfoQ 与 SpecFlow 的作者与主要维护者 Gáspár Nagy 进行了一次访谈,按照他的描述,以用户的角度来看,并行测试执行是最重要的一个新特性。Nagy 发现,在大多数情况下,即使在单一的机器中,执行时间也降低了大约 40%。如果某个应用程序依赖于静态状态,例如缓存,推荐的做法是通过多个隔离的 AppDomain 进行并行的测试执行。这种方式能够确保每个执行测试的线程中的内存是相互隔离的,从而能够以并行的方式进行测试的执行,而无需考虑额外的因素。如果测试并不依赖于任何静态状态,即不会在静态字段中保存任何特定于测试的信息,那么就可以在一个 AppDomain 中并行执行。这种方式的初始化资源占用较少,所需的内存也较少。

至于 Gherkins 3 的升级,Nagy 认为这正是跨平台开源项目的一个绝佳案例。通过这种方式可以打造跨平台的 BDD 技能、工具以及社区。

Nagy 还表示,从开源项目的角度来看,这次发布最重要的一项改进在于:在经历了很长一段时间之后,社区终于成功地发布了一个新版本,并且趁此机会对项目进行了一些清理工作,让项目重回正规,以迎接今后更频繁的发布。

其他的改进点包括:

  • 所有组件都已升级至.NET 4.5,值得注意的是,从这次升级之后,SpecFlow 版本 2 将不再支持任何较早的.NET 运行时版本。
  • 通过一个 Order 参数,就可以控制钩子(例如 BeforeScenario)的执行顺序。
  • 简化了使用 MSTest 时的配置。
  • 改进了基于正则表达式的建议功能,以更好地发现所遗漏的步骤。
  • 与 Visual Studio 的集成被转移至一个独立的项目中。

SpecFlow 是在.NET 平台上实现 BDD 的一个开源工具,它也是 Cucumber 家族的一员,后者支持其他各种平台。通过这种工具,可以以 Gherkin 语言的形式描述一个用户故事中的场景,描述采用了基于关键字的方式,其中最重要的关键字包括 Given、When 和 Then。

在 SpecFlow 网站上可以找到入门示例、升级指南以及文档

查看英文原文: BDD Tool SpecFlow V2 with Parallel Execution

2016-02-01 18:001625
用户头像

发布了 428 篇内容, 共 177.5 次阅读, 收获喜欢 38 次。

关注

评论

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

突破四大要素  飞算SoFlu助力企业实现DevOps落地

SoFlu软件机器人

DevOps 自动化 软件工程

信息爆炸!78天闭门深造千页SpringCloud,再战京东

Java~~~

Java spring 架构 面试 Spring Cloud

硬核!阿里自爆虐心万字面试手册,Github上获赞89.7K

Java~~~

Java 架构 面试 算法 JVM

一个内核漏洞详解:容器逃逸

程序员 架构 面试 计算机

springboot+cloud实战派PDF让开发和微服务架构像喝水一样简单

Java~~~

Java spring 架构 面试 Spring Boot

牛掰!阿里人用7部分讲明白百亿级高并发系统(全彩版小册开源)

Java~~~

Java 架构 面试 高可用 高并发

啥?阿里DBA团队总监把MySQL 性能调优 金字塔,写进了800页笔记?

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

构建可靠分布式架构的最佳方式,竟记在国内第一本“凤凰架构”上

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

莫慌!阿里人用五个模块讲明白了SpringCloud,可下载

Java~~~

Java 架构 面试 微服务 Spring Cloud

Hadoop MapReduce原理、序列化

Mike

数仓出现“wait in ccn queue”的时候,怎么迅速定位处理?

华为云开发者联盟

线程 hash 负载 数仓 GaussDB(DWS)

三面阿里被挂,竟获内推名额,历经5面拿下口碑offer(Java后台)

Java 程序员 架构 面试 计算机

叹服!阿里自述SpringCloud微服务:入门+实战+案例

Java~~~

Java spring 架构 面试 Spring Cloud

百度信誉认证中台架构解析

百度Geek说

后端 软件架构 中台架构

🏆【Alibaba微服务技术系列】「Dubbo3.0技术专题」回顾Dubbo2.x的技术原理和功能实现及源码分析(温故而知新)

洛神灬殇

dubbo RPC 8月日更 Dubbo3

网易云iOS开发一面面经

iOSer

ios 面试

互动直播应用快速开发实践(基于声网)

大伟

设计 | 基于 Redis 谈一谈缓存设计思想

RadonDB

数据库 redis RadonDB

细节爆炸!腾讯用13个案例实战讲明白MySQL,没想到这么全

Java~~~

Java MySQL 数据库 架构 面试

MySQL半同步复制的数据一致性探讨

OpenIM

竟有阿里大牛用678页PDF只讲Java程序性能优化,除了干货就是干货

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

一起吐槽接口文档

FunTester

接口文档 接口测试 API Jira FunTester

开源demo| 视频应用类开源 Demo 大盘点

anyRTC开发者

音视频 视频直播 直播连麦 视频通话

图灵奖得主大全 深度学习经典论文翻译合集 John 易筋 ARTS 打卡 Week 62

John(易筋)

ARTS 打卡计划

CompletableFuture真香,可以替代CountDownLatch!

架构 面试 后端 计算机

自主创新国产化科技:智能制造之 SMT 产线监控管理可视化

一只数据鲸鱼

数据可视化 工业4.0 制造业 智慧工厂

膜拜!首次公布Java10W字面经,Github访问量破百万

Java~~~

Java 架构 面试 微服务 多线程

国产接口工具ApiPost如何利用CryptoJS对请求参数进行MD5/AES加解密

Proud lion

大前端 后端 加密解密 Postman 接口文档

训练千亿参数模型的法宝,昇腾CANN异构计算架构来了~

华为云开发者联盟

盘古 CANN 千亿参数模型 异构计算 计算架构

阿里巴巴新产“Java架构核心宝典”,全是流行技术,限时开放

Java 架构 面试 后端 计算机

Golang并发操作中常见的死锁情形

Regan Yue

协程 Go 语言 8月日更

BDD工具SpecFlow版本2支持并行执行_.NET_Jan Stenberg_InfoQ精选文章