automation - API 自动化测试:有没有办法通过内容验证来自动化下载场景?
问题描述
我在我们的应用程序中有导出到 excel 的功能。我有一种情况:
- 执行导出到excel
- 验证 API 响应状态和导出的 Excel 内容。
使用 Postman,我可以使用“发送和下载”选项以 .xlsx 格式保存导出的 excel,稍后我将手动验证内容(列标题和行值)。
有没有办法通过 API 自动化端到端地自动化这个场景?
目前,我正在执行获取操作(空手道框架),它响应我这些标头作为响应:
Content-Type →application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
接受范围→字节
正文:人类不可读的流对象。
状态:200 正常
如果 e2e 自动化不可能/不可行,那么在这种情况下自动化的接受标准应该是什么?
解决方案
2个选项。
如果您确定文件的二进制内容永远不会改变,请进行二进制比较,请参见以下示例
upload-image.feature
:And match response == read('karate-logo.jpg')
您必须编写一些自定义代码。有 Java 库可以读取 Excel。使用其中之一,读取数据,然后与预期结果进行比较。请参阅有关 Java 互操作的文档并编写一个辅助函数来执行此操作。
编辑 - 也看到这个答案:https ://stackoverflow.com/a/53050249/143475
推荐阅读
- c - arm 编译器 5 不完全尊重 volatile 限定符
- python - 如何在for循环中排除与文本模式匹配的项目?
- phaser-framework - Phaser2 游戏无法在移动设备中运行,但在浏览器中运行
- excel - 如何使用“右”和“查找”功能提取单元格中的数据?
- reactjs - 我正在尝试实现一种删除可交换项目的方法,但是我的删除方法会删除所有项目,而不仅仅是单击的项目
- r - 使用 R 识别文本文件的行终止符
- html - 如何使用css在圆角外添加图标?
- reactjs - ReactJS + NodeJS 服务器 + Filepond 上传文件
- ruby-on-rails - Rails 5 Active Storage:是否有更有效的方式显示多个图像附件?
- css - 有没有办法可以在 CSS 中加入浏览器检测和媒体查询?