javascript - 空手道 API 测试 - 如何迭代读取多个 json 文件以用作单个场景的请求?
问题描述
另外,我需要从项目的根文件夹中为以下代码提供 json 文件路径:
Feature: sample karate test script
Background:
* url 'http://somesample.com'
Scenario: Testing Karate
Given path '/json_verify'
And request read ('a_confirm1.json')
And header Accept = 'application/json'
When method post
Then status 200
我有 a_confirm1、a_confirm2 等文件名。
解决方案
首先,您可以在read()
函数中执行此操作,因为它是纯 JS:
And def index = <index>
And request read ('a_confirm' + index + '.json')
然后请阅读数据驱动测试:https ://github.com/intuit/karate#data-driven-tests
Examples:
| index |
| 1 |
| 2 |
还有许多其他方法可以做到这一点,例如使用循环。只需浏览示例和演示。从“根文件夹”是一种不好的做法,请尝试将它们保存在您的项目目录下。但如果你坚持,请参考:https ://stackoverflow.com/a/53304969/143475
推荐阅读
- c# - 如何在c#中检测变量变化并获取变量的值
- video-streaming - SPICE 服务器在视频流检测中使用什么算法?
- javascript - 使用 react-native-offline 手动拦截 react-native 中的调度
- angular-material - 给出 HEX 颜色代码时如何生成颜色数组作为材料颜色生成器
- android - 如何使用以 TypeScript for Firebase Realtime 数据库编写的云函数从 onCreate 触发之外的节点获取数据?
- go - Golang 中的 bufio.NewReader(os.Stdin) 和 fmt.Scanln() 有什么区别
- graphql - 为 GraphQL 中的所有查询添加架构指令
- exception - 获取 org.xmlpull.v1.XmlPullParserException 错误:未终止的实体引用(位置:TEXT @1:683533 in java.io.InputStreamReader@a4cc4c8)
- webpack - 如何使用 dev-server watch 修复错误?
- android - 应用程序在后台时的 Firebase 控制台消息传递