Netflix最近发布了Polly.JS,一个用于记录、重放和模拟HTTP交互的开源库。
Polly利原生机浏览器API来模拟请求和响应,以便减少配置工作,为开发人员提供一种管理HTTP请求的机制。
Netflix团队发现,与API保持一致是一项艰巨的挑战,于是他们创建了Polly。Polly以灵活的方式记录和维护服务器响应。例如,它可以在测试运行期间记录和重放HTTP交互,用以验证应用程序的准确性,以及捕获请求和响应,用以模拟应用程序状态的变更。
Polly支持Fetch和XHR请求,并为Mocha和QUnit提供测试工具。开发人员可以拦截、修改和附加事件,并应用更改来加速或减慢请求响应时间。
使用Polly记录的HTTP交互可以以HTTP存档(HAR)格式保存到浏览器的磁盘或本地存储器中。
目前支持大多数最新版本浏览器,不过根据社区反馈,Polly团队正在积极提供对Internet Explorer 11的支持。
Polly团队还在努力为这个库提供同构的集成方式,以支持其他测试框架,如Jest和Intern。目前仅限于在Web浏览器中运行测试。
Polly.JS基于Apache 2许可发行,并鼓励开发者参与贡献代码,这里是贡献者需要阅读的相关指南。
领取专属 10元无门槛券
私享最新 技术干货