Yadda 3.0.0已正式发布到npm。Yadda是JavaScript的BDD库,与Cucumber类似,它能把用普通语言书写的规格说明映射为可执行代码;但Yadda从设计之初就更少规定这些规格的写法,让表述更自由。

传统BDD写法通常要写成“Given...And...When...Then”这种固定句式,结构重复且冗长。Yadda则允许你直接写出接近自然语言的简洁表述。两种写法都可以作为可执行规格,但后者显然更容易阅读。

Yadda 3.0的大部分工作属于现代化改造:只支持Node,移除CasperJS、PhantomJS、Bower、Component等过时集成,测试套件迁移到node:test,采用Biome与lefthook,源码升级为ES6语法,并添加了Playwright、Puppeteer等当前流行的示例,同时开始提供TypeScript定义。

不过,真正值得关注的是两件更重要的事:这次Yadda 3.0的现代化改造,大部分代码由Claude Code(基于Opus 4.8)完成。AI智能体正在成为开源维护的真实劳动力,而Yadda 3.0是这个趋势下又一个引人注目的样本。