mocked
您友好的HTTP模拟响应服务器。
为什么?
mocked
支持您在软件开发过程中的需求。以下是一些原因:
mocked
允许您包含可能在不同开发阶段变化的来自外部文件的响应。在这种情况下,您不需要更新 mocked
配置。
- 它允许开发者将测试的系统与外部依赖隔离。这在测试与外部服务交互的组件时特别有用。通过使用
mocked
,开发者可以模拟外部服务的行为,并确保测试的系统按预期运行。
- 当多个团队在相互交互的不同组件上工作时,
mocked
可以用来模拟仍在开发中的服务。这使得团队可以并行工作,而无需等待彼此。
- 使用
mocked
,开发者可以完全控制服务器的响应。这使得测试系统在不同响应和难以用真实服务器复制的场景下的行为成为可能。
mocked
使用 YAML
格式的配置文件进行配置。
示例
routes:
- path: /v1/login
methods:
- POST
- PUT
conditions:
- type: HeaderContains
with:
name: Authorization
values:
- Basic
response:
status: 200
headers:
Content-Type: application/json
body:
file: resp.json
- path: /v1/search/:type/:version
methods:
- POST
conditions:
- or:
- type: PathParam
with:
name: type
values:
- foo
- bar
- type: PathParam
with:
name: version
values:
- 1
- 2
response:
status: 200
headers:
Content-Type: application/json
body: >
Hello, World
This is a body
and it uses multiple
lines
配置
字段 |
类型 |
描述 |
必需 |
routes |
路由 |
mocked 检查的所有规则的配置。 |
是 |
路由
字段 |
类型 |
描述 |
必需 |
path |
字符串 |
资源的路径。这可能包括可以使用匹配器检查的路径参数。路径参数以冒号(:)开头 |
是 |
methods |
列表(字符串) |
路由响应的HTTP方法列表。 |
是 |
conditions |
条件 |
一旦匹配到路由,就会检查的单个或多个条件。条件还包含在匹配的情况下返回的响应。 |
是 |
条件
字段 |
类型 |
描述 |
必需 |
type |
字符串 |
单个条件的类型。如果只需要使用一个条件,则可以使用此功能。 |
否 |
with |
|
类型为 type 的条件检查所需的属性。仅在此处用于单个条件。 |
否 |
or |
或 |
定义一个条件列表,通过逻辑“或”运算符组合,表示至少有一个条件为真时,输出为真。 |
否 |
和 |
并且 |
定义一个条件列表,通过逻辑“与”运算符组合,表示所有条件都必须为真时,输出为真。 |
否 |
响应 |
响应 |
响应定义。 |
是 |
如果没有使用单个条件或使用“或”和“与”组合的条件,条件始终评估为真。
或
字段 |
类型 |
描述 |
必需 |
type |
字符串 |
单个条件的类型。如果只需要使用一个条件,则可以使用此功能。 |
否 |
with |
|
类型为 type 的条件检查所需的属性。仅在此处用于单个条件。 |
否 |
并且
字段 |
类型 |
描述 |
必需 |
type |
字符串 |
单个条件的类型。如果只需要使用一个条件,则可以使用此功能。 |
否 |
with |
|
类型为 type 的条件检查所需的属性。仅在此处用于单个条件。 |
否 |
过滤器类型
PathParam
字段 |
类型 |
描述 |
必需 |
名称 |
字符串 |
要匹配的路径参数名称。 |
是 |
值 |
列表(字符串)或列表(数字) |
要匹配的属性值。可以是字符串或数字。 |
是 |
字段 |
类型 |
描述 |
必需 |
名称 |
字符串 |
要匹配的报头名称。 |
是 |
值 |
列表(字符串) |
必须包含报头值的字符串列表。 |
是 |
响应
字段 |
类型 |
描述 |
必需 |
状态 |
数字 |
要返回的HTTP状态码。 |
是 |
报头 |
map(字符串,字符串) |
要添加到响应中的报头映射。 |
否 |
主体 |
主体 |
要添加到响应的主体。 |
否 |
主体
字符串主体
字符串主体包含yaml格式的字符串。它可能以|
开头以保留换行符,或者以>
开头以将yaml多行字符串转换为单行响应字符串。
包含主体
字段 |
类型 |
描述 |
必需 |
包含 |
字符串 |
要包含到响应中的文件路径。如果不存在,服务器返回内部服务器错误(500) |
是 |