Python 用于大数据转储的vcrpy

Python 用于大数据转储的vcrpy,python,api,automated-tests,Python,Api,Automated Tests,我在单元测试中使用vcrpy模拟api调用。但是,其中一个api调用会生成大量数据。这些数据基本上是很多行的json数据,我只想对其中的几行数据进行测试(并存储为vcr盒式磁带夹具) 如何仅保存给定api调用的部分数据?您可以使用vcrpy的功能。构造一个函数,使响应仅变异为大响应数据的几行,并在记录响应之前将此函数传递给,这只会影响磁盘上的记录磁带,并保持api的完整性。从官方文件: 您还可以使用before_record_response配置选项进行响应过滤。它的用法是相似的 对于上面的be

我在单元测试中使用vcrpy模拟api调用。但是,其中一个api调用会生成大量数据。这些数据基本上是很多行的json数据,我只想对其中的几行数据进行测试(并存储为vcr盒式磁带夹具)

如何仅保存给定api调用的部分数据?

您可以使用vcrpy的功能。构造一个函数,使响应仅变异为大响应数据的几行,并在记录响应之前将此函数传递给
,这只会影响磁盘上的记录磁带,并保持api的完整性。从官方文件:

您还可以使用before_record_response配置选项进行响应过滤。它的用法是相似的 对于上面的before_record_请求,您可以修改响应,或者返回None以避免记录响应 请求和响应。例如,要隐藏请求正文中的敏感数据:


它有多少数据?如果您有足够的磁盘空间,请运行测试并让它提取大量数据。然后手动编辑输出装置并删除多余的行。下次测试运行时,它将重新使用缩小的夹具。是的,这就是我正在做的,不理想。最后,我为api端点做了一个测试标志,它只返回数据的一个子集。