fix(tester): default local host to loopback
This commit is contained in:
@@ -14,7 +14,9 @@
|
||||
## 使用前准备
|
||||
|
||||
- 目录在项目根的 `.pouch/tester/`。没有就说「初始化 tester」。
|
||||
- 跑真实环境前,复制 `.pouch/tester/local.yaml.example` 为 `local.yaml`,填 `HOST`。也可以用环境变量 `HX_TEST_HOST`。
|
||||
- 跑真实环境前,复制 `.pouch/tester/local.yaml.example` 为 `local.yaml`;模板默认
|
||||
`HOST: "127.0.0.1"`。如果目标不是本机,显式改成目标地址。也可以用环境变量
|
||||
`HX_TEST_HOST` 覆盖。
|
||||
- 会动硬件、会改数据的用例带风险级别(`readonly` / `mutating` / `destructive`)。默认只跑最低档 `readonly`。要跑更高风险,需要你明确说,例如「风险到 mutating」;碰哪个子系统另由 `gate`(如 hardware / weld)控制。
|
||||
|
||||
## 使用示例
|
||||
|
||||
@@ -3,7 +3,8 @@ name: tester
|
||||
description: >-
|
||||
维护并执行项目黑盒测试目录(.pouch/tester):列出/增改用例,按分类或
|
||||
id 跑脚本、浏览器或移动模拟器。触发词:/tester、列出测试、完善测试用例、
|
||||
按分类测、跑 smoke、现场复测。默认风险最低档,不猜 HOST。
|
||||
按分类测、跑 smoke、现场复测。默认风险最低档;local 配置的 HOST 默认是
|
||||
127.0.0.1。
|
||||
---
|
||||
|
||||
# Tester:项目测试目录
|
||||
@@ -29,7 +30,9 @@ python3 <skill-dir>/scripts/catalog.py <list|select|show|validate|next-id|run-sc
|
||||
|
||||
## 边界(所有模式)
|
||||
|
||||
- 不猜 HOST / Base URL / 是否已授权。缺 HOST 则停,记 environment-fail,不用 localhost。
|
||||
- `local.yaml.example` 的 HOST 默认是 `127.0.0.1`;如果目标不是本机,必须在
|
||||
`local.yaml` 或环境变量中显式覆盖。`local.yaml` 不存在且没有环境变量时仍不猜
|
||||
HOST,停下并记 environment-fail。
|
||||
- 默认风险上限是 catalog 里的 `default_max_risk`。超出上限的条目标 `skipped`,禁止执行。
|
||||
- `risk` 只能是 `readonly` / `mutating` / `destructive`,默认只跑 `readonly`。`tag=smoke` 只能配 `risk=readonly`。规则见 [levels.md](references/levels.md)。
|
||||
- `driver=browser` 必须开真实页面;`driver=mobile` 必须挂模拟器 session。二者都不得改成只打 API。
|
||||
@@ -45,7 +48,7 @@ python3 <skill-dir>/scripts/catalog.py <list|select|show|validate|next-id|run-sc
|
||||
|
||||
1. 建 `.pouch/tester/{cases,runs}/`。
|
||||
2. 若不存在,从 `<skill-dir>/templates/` 拷 `catalog.yaml` 和 `local.yaml.example`。
|
||||
3. 不写 `local.yaml` 的 HOST。不猜地址。
|
||||
3. 从模板生成的 `local.yaml` 默认使用 `HOST: "127.0.0.1"`;不要根据项目内容猜远程地址。
|
||||
4. 跑 `catalog.py validate --root <root>`。无用例是「部分完成」,不是失败。
|
||||
|
||||
```text
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
```
|
||||
catalog.yaml 分类、风险阶梯、session、变量
|
||||
local.yaml.example HOST 与授权开关模板
|
||||
local.yaml.example HOST 与授权开关模板(默认 127.0.0.1)
|
||||
local.yaml 本机覆盖,不提交
|
||||
cases/<category>.yaml 一个分类一个文件(执行源)
|
||||
cases.csv 给人看的扁平清单;generate_cases_csv.py 读 cases/*.yaml,并拼最近一次运行的 last_* 列
|
||||
@@ -29,7 +29,9 @@ runs/*.csv 同一次运行的成绩单;generate_run_csv.py 从对
|
||||
| `run_together` | 可选。成组执行:`[{ids: [TC-…, TC-…], continue_on_fail: true}]`。点到组内任一条,`select` 会按 `ids` 顺序把整组扩进命中列表。`continue_on_fail: true` 时组内前一条产品 fail 仍跑后一条(返回/收尾)。一个 id 只能属于一组。 |
|
||||
| `status_probe` | 可选。顶层默认值,一个**分类级前置条件**:`{url, stop_if: {字段: [命中值]}}`。运行前请求 `url`,响应命中任一 `stop_if` 条件即视为前置不满足。分类项可用同名键覆盖:缺省继承顶层、`false` 关闭、mapping 整体替换。命中或不可达只影响用它的分类,不是产品失败。业界对应 pytest 的 session fixture / Robot 的 Suite Setup。`select` 会按分类返回解析后的生效值,`url` 已用 `vars` 展开 |
|
||||
|
||||
`local.yaml` 与环境变量覆盖 `HOST` 和授权开关。查找顺序:环境变量 > `local.yaml` > `catalog.yaml` 的 vars。也认 `HX_TEST_HOST` 作为 `HOST`。
|
||||
`local.yaml` 与环境变量覆盖 `HOST` 和授权开关。模板中的 `HOST` 默认是
|
||||
`127.0.0.1`;远程目标必须显式覆盖。查找顺序:环境变量 > `local.yaml` >
|
||||
`catalog.yaml` 的 vars。也认 `HX_TEST_HOST` 作为 `HOST`。
|
||||
|
||||
## 一条用例
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# 复制为 .pouch/tester/local.yaml 后填写。不要提交 local.yaml。
|
||||
HOST: ""
|
||||
# 复制为 .pouch/tester/local.yaml 后按目标环境调整。不要提交 local.yaml。
|
||||
HOST: "127.0.0.1"
|
||||
AUTHORIZE_MUTATING: false
|
||||
AUTHORIZE_DESTRUCTIVE: false
|
||||
|
||||
Reference in New Issue
Block a user