allure-cli 0.2.1__tar.gz → 0.2.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {allure_cli-0.2.1/allure_cli.egg-info → allure_cli-0.2.4}/PKG-INFO +183 -31
- {allure_cli-0.2.1 → allure_cli-0.2.4}/README.md +179 -27
- {allure_cli-0.2.1 → allure_cli-0.2.4}/allure_cli/__init__.py +1 -1
- {allure_cli-0.2.1 → allure_cli-0.2.4/allure_cli.egg-info}/PKG-INFO +183 -31
- allure_cli-0.2.4/allure_cli.egg-info/entry_points.txt +2 -0
- {allure_cli-0.2.1 → allure_cli-0.2.4}/pyproject.toml +5 -5
- allure_cli-0.2.1/allure_cli.egg-info/entry_points.txt +0 -2
- {allure_cli-0.2.1 → allure_cli-0.2.4}/LICENSE +0 -0
- {allure_cli-0.2.1 → allure_cli-0.2.4}/MANIFEST.in +0 -0
- {allure_cli-0.2.1 → allure_cli-0.2.4}/allure_cli/__main__.py +0 -0
- {allure_cli-0.2.1 → allure_cli-0.2.4}/allure_cli/cli.py +0 -0
- {allure_cli-0.2.1 → allure_cli-0.2.4}/allure_cli/client.py +0 -0
- {allure_cli-0.2.1 → allure_cli-0.2.4}/allure_cli.egg-info/SOURCES.txt +0 -0
- {allure_cli-0.2.1 → allure_cli-0.2.4}/allure_cli.egg-info/dependency_links.txt +0 -0
- {allure_cli-0.2.1 → allure_cli-0.2.4}/allure_cli.egg-info/top_level.txt +0 -0
- {allure_cli-0.2.1 → allure_cli-0.2.4}/requirements.txt +0 -0
- {allure_cli-0.2.1 → allure_cli-0.2.4}/setup.cfg +0 -0
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: allure-cli
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.4
|
|
4
4
|
Summary: CLI для Allure TestOps: получение Allure ID тест-кейса по названию
|
|
5
5
|
Author: Allure CLI Contributors
|
|
6
6
|
License-Expression: MIT
|
|
7
|
-
Project-URL: Homepage, https://github.com/
|
|
8
|
-
Project-URL: Repository, https://github.com/
|
|
9
|
-
Project-URL: Bug Tracker, https://github.com/
|
|
7
|
+
Project-URL: Homepage, https://github.com/teka1905/allure_cli
|
|
8
|
+
Project-URL: Repository, https://github.com/teka1905/allure_cli
|
|
9
|
+
Project-URL: Bug Tracker, https://github.com/teka1905/allure_cli/issues
|
|
10
10
|
Keywords: allure,testops,testing,qa,cli
|
|
11
11
|
Classifier: Development Status :: 4 - Beta
|
|
12
12
|
Classifier: Intended Audience :: Developers
|
|
@@ -41,7 +41,7 @@ CLI для работы с Allure TestOps. Основная задача — п
|
|
|
41
41
|
pip install allure-cli
|
|
42
42
|
```
|
|
43
43
|
|
|
44
|
-
После установки команда `
|
|
44
|
+
После установки команда `allure-cli` будет доступна в PATH.
|
|
45
45
|
|
|
46
46
|
## Настройка
|
|
47
47
|
|
|
@@ -64,23 +64,32 @@ export ALLURE_TOKEN="<YOUR_TOKEN>"
|
|
|
64
64
|
|
|
65
65
|
## Использование
|
|
66
66
|
|
|
67
|
-
CLI поддерживает
|
|
67
|
+
CLI поддерживает четыре команды:
|
|
68
68
|
|
|
69
69
|
1. **`search`** (по умолчанию) — поиск тест-кейсов по ID или названию
|
|
70
70
|
2. **`find-orphaned`** — поиск осиротевших (устаревших) тестов
|
|
71
|
+
3. **`delete`** — удаление тест-кейсов по ID из CSV файла
|
|
72
|
+
4. **`create`** — создание новых тест-кейсов из CSV или JSON файла
|
|
71
73
|
|
|
72
74
|
**Справка:**
|
|
75
|
+
|
|
73
76
|
```bash
|
|
74
77
|
# Общая справка
|
|
75
|
-
|
|
76
|
-
|
|
78
|
+
allure-cli
|
|
79
|
+
allure-cli --help
|
|
77
80
|
|
|
78
81
|
# Справка по команде search
|
|
79
|
-
|
|
80
|
-
|
|
82
|
+
allure-cli search
|
|
83
|
+
allure-cli search --help
|
|
81
84
|
|
|
82
85
|
# Справка по команде find-orphaned
|
|
83
|
-
|
|
86
|
+
allure-cli find-orphaned --help
|
|
87
|
+
|
|
88
|
+
# Справка по команде delete
|
|
89
|
+
allure-cli delete --help
|
|
90
|
+
|
|
91
|
+
# Справка по команде create
|
|
92
|
+
allure-cli create --help
|
|
84
93
|
```
|
|
85
94
|
|
|
86
95
|
### Команда `search` (поиск тестов)
|
|
@@ -91,41 +100,43 @@ export ALLURE_PROJECT_ID=211
|
|
|
91
100
|
export ALLURE_TOKEN=<ваш_токен>
|
|
92
101
|
|
|
93
102
|
# Поиск по подстроке названия
|
|
94
|
-
|
|
103
|
+
allure-cli search "Автоответ в чат"
|
|
95
104
|
|
|
96
105
|
# Старый синтаксис (без команды) тоже работает
|
|
97
|
-
|
|
106
|
+
allure-cli "Автоответ в чат"
|
|
98
107
|
|
|
99
108
|
# Показать справку
|
|
100
|
-
|
|
101
|
-
|
|
109
|
+
allure-cli search
|
|
110
|
+
allure-cli search --help
|
|
102
111
|
```
|
|
103
112
|
|
|
104
113
|
**Примеры:**
|
|
105
114
|
|
|
106
115
|
```bash
|
|
107
116
|
# Поиск по подстроке названия — выводит id и name с цветами
|
|
108
|
-
|
|
117
|
+
allure-cli search "Автоответ в чат"
|
|
109
118
|
|
|
110
119
|
# Поиск по ID (число)
|
|
111
|
-
|
|
120
|
+
allure-cli search 12345
|
|
112
121
|
|
|
113
122
|
# Только ID, по одному на строку (без цветов)
|
|
114
|
-
|
|
123
|
+
allure-cli search -q "Автоответ в чат"
|
|
115
124
|
|
|
116
125
|
# Без цветов
|
|
117
|
-
|
|
126
|
+
allure-cli search --no-color "Автоответ в чат"
|
|
118
127
|
|
|
119
128
|
# Параметры через аргументы
|
|
120
|
-
|
|
129
|
+
allure-cli search --url https://allure-testops.example.com --project 211 --token $ALLURE_TOKEN "запрос"
|
|
121
130
|
```
|
|
122
131
|
|
|
123
132
|
**Вывод:**
|
|
133
|
+
|
|
124
134
|
- В обычном режиме: номер, ID (синий), название (циан), и fullName (серый) если отличается
|
|
125
135
|
- Результаты с цветной подсветкой для лучшей читаемости
|
|
126
136
|
- В quiet режиме (`-q`): только ID, по одному на строку (без цветов)
|
|
127
137
|
|
|
128
138
|
**Пример вывода:**
|
|
139
|
+
|
|
129
140
|
```
|
|
130
141
|
Found 3 test cases:
|
|
131
142
|
|
|
@@ -138,6 +149,7 @@ Found 3 test cases:
|
|
|
138
149
|
```
|
|
139
150
|
|
|
140
151
|
Где:
|
|
152
|
+
|
|
141
153
|
- `12345`, `12389`, `12401` — синий, жирный (ID)
|
|
142
154
|
- `User login...` — циан (название)
|
|
143
155
|
- `tests.auth...` — серый (fullName)
|
|
@@ -151,27 +163,28 @@ Found 3 test cases:
|
|
|
151
163
|
**Проблема:** Когда в автотестах меняется название шагов или имя сценария, Allure генерирует новый ID. В БД остаётся старый тест, который больше не выполняется и не поддерживается.
|
|
152
164
|
|
|
153
165
|
**Решение:** Команда `find-orphaned` ищет такие тесты по двум критериям:
|
|
166
|
+
|
|
154
167
|
1. Тест не обновлялся N дней (по умолчанию 30)
|
|
155
168
|
2. Есть другие тесты с похожими названиями (similarity >= 0.75)
|
|
156
169
|
|
|
157
170
|
```bash
|
|
158
171
|
# Найти осиротевшие тесты (по умолчанию: неактивны 30+ дней + similarity >= 0.75)
|
|
159
|
-
|
|
172
|
+
allure-cli find-orphaned
|
|
160
173
|
|
|
161
174
|
# Только неактивные тесты (без проверки схожести)
|
|
162
|
-
|
|
175
|
+
allure-cli find-orphaned --days 60
|
|
163
176
|
|
|
164
177
|
# Только тесты с похожими названиями (без проверки неактивности)
|
|
165
|
-
|
|
178
|
+
allure-cli find-orphaned --similarity 0.8
|
|
166
179
|
|
|
167
180
|
# Оба критерия одновременно
|
|
168
|
-
|
|
181
|
+
allure-cli find-orphaned --days 60 --similarity 0.8
|
|
169
182
|
|
|
170
183
|
# Только ID (для скриптов)
|
|
171
|
-
|
|
184
|
+
allure-cli find-orphaned -q
|
|
172
185
|
|
|
173
186
|
# Интерактивное удаление найденных тестов
|
|
174
|
-
|
|
187
|
+
allure-cli find-orphaned --delete
|
|
175
188
|
```
|
|
176
189
|
|
|
177
190
|
**Параметры:**
|
|
@@ -188,6 +201,7 @@ allure_cli find-orphaned --delete
|
|
|
188
201
|
**Цветной вывод:**
|
|
189
202
|
|
|
190
203
|
По умолчанию результаты выводятся с цветами для лучшей читаемости:
|
|
204
|
+
|
|
191
205
|
- 🔴 **Красный** — осиротевшие тесты (кандидаты на удаление)
|
|
192
206
|
- 🟢 **Зелёный** — высокая схожесть (≥0.9) или свежие тесты (<7 дней)
|
|
193
207
|
- 🟡 **Жёлтый** — средняя схожесть (0.75-0.9) или средний возраст (7-30 дней)
|
|
@@ -196,19 +210,152 @@ allure_cli find-orphaned --delete
|
|
|
196
210
|
- ⚪ **Серый** — второстепенная информация
|
|
197
211
|
|
|
198
212
|
Цвета автоматически отключаются при:
|
|
213
|
+
|
|
199
214
|
- Перенаправлении вывода в файл
|
|
200
215
|
- Переменной окружения `NO_COLOR`
|
|
201
216
|
- Флаге `--no-color`
|
|
202
217
|
|
|
203
218
|
```bash
|
|
204
219
|
# Отключить цвета
|
|
205
|
-
|
|
220
|
+
allure-cli find-orphaned --no-color
|
|
206
221
|
|
|
207
222
|
# Или через переменную окружения
|
|
208
|
-
NO_COLOR=1
|
|
223
|
+
NO_COLOR=1 allure-cli find-orphaned
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
### Команда `delete` (удаление тестов)
|
|
227
|
+
|
|
228
|
+
Удаляет тест-кейсы по ID из CSV файла. Поддерживает форматы CSV с разделителями ',' или ';'.
|
|
229
|
+
|
|
230
|
+
**Пример CSV файла:**
|
|
231
|
+
|
|
232
|
+
```
|
|
233
|
+
id,name
|
|
234
|
+
12345,Test case 1
|
|
235
|
+
12346,Test case 2
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
**Использование:**
|
|
239
|
+
|
|
240
|
+
```bash
|
|
241
|
+
# Удалить тест-кейсы из CSV файла
|
|
242
|
+
allure-cli delete --file test_cases.csv
|
|
243
|
+
|
|
244
|
+
# Удалить тест-кейсы без подтверждения (опасно!)
|
|
245
|
+
allure-cli delete --file test_cases.csv --yes
|
|
246
|
+
|
|
247
|
+
# Удалить тест-кейсы и показать подробный вывод
|
|
248
|
+
allure-cli delete --file test_cases.csv --verbose
|
|
249
|
+
|
|
250
|
+
# Удалить тест-кейсы без получения их деталей (быстрее)
|
|
251
|
+
allure-cli delete --file test_cases.csv --no-fetch
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
**Параметры:**
|
|
255
|
+
|
|
256
|
+
| Параметр | Описание | По умолчанию |
|
|
257
|
+
|----------|----------|--------------|
|
|
258
|
+
| `--file` | Путь к CSV файлу с ID тестов | Обязательный |
|
|
259
|
+
| `--yes` | Пропустить подтверждение удаления | false |
|
|
260
|
+
| `--verbose` | Показать подробный вывод | false |
|
|
261
|
+
| `--no-fetch` | Не получать детали тестов перед удалением | false |
|
|
262
|
+
| `--no-color` | Отключить цветной вывод | false |
|
|
263
|
+
|
|
264
|
+
**Интерактивное подтверждение:**
|
|
265
|
+
Команда по умолчанию запрашивает подтверждение перед удалением каждого теста:
|
|
266
|
+
|
|
267
|
+
- `y` — удалить тест
|
|
268
|
+
- `n` — пропустить
|
|
269
|
+
- `q` — завершить
|
|
270
|
+
|
|
271
|
+
**Пример вывода:**
|
|
272
|
+
|
|
273
|
+
```
|
|
274
|
+
Found 2 test case(s) in CSV file:
|
|
275
|
+
1. ID 12345 - Test case 1
|
|
276
|
+
2. ID 12346 - Test case 2
|
|
277
|
+
|
|
278
|
+
Delete these test cases? [y/N]: y
|
|
279
|
+
|
|
280
|
+
Deleting test cases...
|
|
281
|
+
[1/2] Test case 12345: deleted
|
|
282
|
+
[2/2] Test case 12346: deleted
|
|
283
|
+
|
|
284
|
+
Successfully deleted 2 test case(s)
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
### Команда `create` (создание тестов)
|
|
288
|
+
|
|
289
|
+
Создает новые тест-кейсы из CSV или JSON файла.
|
|
290
|
+
|
|
291
|
+
**Пример CSV файла:**
|
|
292
|
+
|
|
293
|
+
```
|
|
294
|
+
name,description,tags
|
|
295
|
+
"New test case 1","Description for test case 1","tag1;tag2"
|
|
296
|
+
"New test case 2","Description for test case 2","tag3"
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
**Пример JSON файла:**
|
|
300
|
+
|
|
301
|
+
```json
|
|
302
|
+
[
|
|
303
|
+
{
|
|
304
|
+
"name": "New test case 1",
|
|
305
|
+
"description": "Description for test case 1",
|
|
306
|
+
"tags": ["tag1", "tag2"]
|
|
307
|
+
},
|
|
308
|
+
{
|
|
309
|
+
"name": "New test case 2",
|
|
310
|
+
"description": "Description for test case 2",
|
|
311
|
+
"tags": ["tag3"]
|
|
312
|
+
}
|
|
313
|
+
]
|
|
314
|
+
```
|
|
315
|
+
|
|
316
|
+
**Использование:**
|
|
317
|
+
|
|
318
|
+
```bash
|
|
319
|
+
# Создать тест-кейсы из CSV файла
|
|
320
|
+
allure-cli create --file test_cases.csv
|
|
321
|
+
|
|
322
|
+
# Создать тест-кейсы из JSON файла
|
|
323
|
+
allure-cli create --file test_cases.json
|
|
324
|
+
|
|
325
|
+
# Создать тест-кейсы с дополнительными тегами
|
|
326
|
+
allure-cli create --file test_cases.csv --tag "new" --tag "automated"
|
|
327
|
+
|
|
328
|
+
# Создать тест-кейсы и показать подробный вывод
|
|
329
|
+
allure-cli create --file test_cases.csv --verbose
|
|
330
|
+
```
|
|
331
|
+
|
|
332
|
+
**Параметры:**
|
|
333
|
+
|
|
334
|
+
| Параметр | Описание | По умолчанию |
|
|
335
|
+
|----------|----------|--------------|
|
|
336
|
+
| `--file` | Путь к CSV или JSON файлу | Обязательный |
|
|
337
|
+
| `--tag` | Дополнительные теги для всех тестов | [] |
|
|
338
|
+
| `--verbose` | Показать подробный вывод | false |
|
|
339
|
+
| `--no-color` | Отключить цветной вывод | false |
|
|
340
|
+
|
|
341
|
+
**Интерактивный процесс:**
|
|
342
|
+
Команда показывает прогресс создания каждого теста:
|
|
343
|
+
|
|
344
|
+
- `✓` — успешно создан
|
|
345
|
+
- `✗` — ошибка при создании
|
|
346
|
+
|
|
347
|
+
**Пример вывода:**
|
|
348
|
+
|
|
349
|
+
```
|
|
350
|
+
Creating test cases from test_cases.csv...
|
|
351
|
+
[1/2] New test case 1: created (ID: 12347)
|
|
352
|
+
[2/2] New test case 2: created (ID: 12348)
|
|
353
|
+
|
|
354
|
+
Successfully created 2 test case(s)
|
|
209
355
|
```
|
|
210
356
|
|
|
211
357
|
**Логика работы флагов:**
|
|
358
|
+
|
|
212
359
|
- Без флагов: применяются оба критерия (`--days 30 --similarity 0.75`)
|
|
213
360
|
- Только `--days N`: ищет тесты неактивные N+ дней (без проверки схожести)
|
|
214
361
|
- Только `--similarity X`: ищет тесты с похожими названиями (без проверки неактивности)
|
|
@@ -217,6 +364,7 @@ NO_COLOR=1 allure_cli find-orphaned
|
|
|
217
364
|
**Умная нормализация названий:**
|
|
218
365
|
|
|
219
366
|
По умолчанию включена нормализация названий для более точного поиска дубликатов. Удаляется "шум":
|
|
367
|
+
|
|
220
368
|
- **Даты**: `2024-01-15`, `15/01/2024`, `20240115`
|
|
221
369
|
- **Временные метки**: `14:30:45`, Unix timestamps
|
|
222
370
|
- **Версии**: `v1.2.3`, `version 2`
|
|
@@ -224,6 +372,7 @@ NO_COLOR=1 allure_cli find-orphaned
|
|
|
224
372
|
- **Стоп-слова**: `test`, `check`, `verify`, `should`, `when`, `then`, `given`
|
|
225
373
|
|
|
226
374
|
**Примеры:**
|
|
375
|
+
|
|
227
376
|
```
|
|
228
377
|
Оригинал: "Test [TC-123] User login verification 2024-01-15"
|
|
229
378
|
Нормализованное: "user login"
|
|
@@ -235,8 +384,9 @@ NO_COLOR=1 allure_cli find-orphaned
|
|
|
235
384
|
```
|
|
236
385
|
|
|
237
386
|
Чтобы отключить нормализацию (сравнивать названия как есть):
|
|
387
|
+
|
|
238
388
|
```bash
|
|
239
|
-
|
|
389
|
+
allure-cli find-orphaned --no-normalize
|
|
240
390
|
```
|
|
241
391
|
|
|
242
392
|
**Пример вывода:**
|
|
@@ -264,10 +414,11 @@ Found 2 potentially orphaned test(s):
|
|
|
264
414
|
**Интерактивное удаление:**
|
|
265
415
|
|
|
266
416
|
```bash
|
|
267
|
-
|
|
417
|
+
allure-cli find-orphaned --delete
|
|
268
418
|
```
|
|
269
419
|
|
|
270
420
|
Для каждого найденного теста будет предложено:
|
|
421
|
+
|
|
271
422
|
- `y` — удалить тест
|
|
272
423
|
- `n` — пропустить
|
|
273
424
|
- `q` — завершить
|
|
@@ -276,4 +427,5 @@ allure_cli find-orphaned --delete
|
|
|
276
427
|
|
|
277
428
|
Используется схема из [документации ТестОпс](https://docs.qatools.ru/api): API-токен обменивается на JWT через `POST /api/uaa/oauth/token`, далее запросы к API — с заголовком `Authorization: Bearer <jwt>`.
|
|
278
429
|
|
|
279
|
-
JWT кэшируется на диск (`~/.cache/
|
|
430
|
+
JWT кэшируется на диск (`~/.cache/allure-cli/` или `$XDG_CACHE_HOME/allure-cli/`), чтобы не запрашивать новый токен при каждом вызове. При ответе 401 от API кэш сбрасывается и токен запрашивается заново автоматически.
|
|
431
|
+
-e
|
|
@@ -17,7 +17,7 @@ CLI для работы с Allure TestOps. Основная задача — п
|
|
|
17
17
|
pip install allure-cli
|
|
18
18
|
```
|
|
19
19
|
|
|
20
|
-
После установки команда `
|
|
20
|
+
После установки команда `allure-cli` будет доступна в PATH.
|
|
21
21
|
|
|
22
22
|
## Настройка
|
|
23
23
|
|
|
@@ -40,23 +40,32 @@ export ALLURE_TOKEN="<YOUR_TOKEN>"
|
|
|
40
40
|
|
|
41
41
|
## Использование
|
|
42
42
|
|
|
43
|
-
CLI поддерживает
|
|
43
|
+
CLI поддерживает четыре команды:
|
|
44
44
|
|
|
45
45
|
1. **`search`** (по умолчанию) — поиск тест-кейсов по ID или названию
|
|
46
46
|
2. **`find-orphaned`** — поиск осиротевших (устаревших) тестов
|
|
47
|
+
3. **`delete`** — удаление тест-кейсов по ID из CSV файла
|
|
48
|
+
4. **`create`** — создание новых тест-кейсов из CSV или JSON файла
|
|
47
49
|
|
|
48
50
|
**Справка:**
|
|
51
|
+
|
|
49
52
|
```bash
|
|
50
53
|
# Общая справка
|
|
51
|
-
|
|
52
|
-
|
|
54
|
+
allure-cli
|
|
55
|
+
allure-cli --help
|
|
53
56
|
|
|
54
57
|
# Справка по команде search
|
|
55
|
-
|
|
56
|
-
|
|
58
|
+
allure-cli search
|
|
59
|
+
allure-cli search --help
|
|
57
60
|
|
|
58
61
|
# Справка по команде find-orphaned
|
|
59
|
-
|
|
62
|
+
allure-cli find-orphaned --help
|
|
63
|
+
|
|
64
|
+
# Справка по команде delete
|
|
65
|
+
allure-cli delete --help
|
|
66
|
+
|
|
67
|
+
# Справка по команде create
|
|
68
|
+
allure-cli create --help
|
|
60
69
|
```
|
|
61
70
|
|
|
62
71
|
### Команда `search` (поиск тестов)
|
|
@@ -67,41 +76,43 @@ export ALLURE_PROJECT_ID=211
|
|
|
67
76
|
export ALLURE_TOKEN=<ваш_токен>
|
|
68
77
|
|
|
69
78
|
# Поиск по подстроке названия
|
|
70
|
-
|
|
79
|
+
allure-cli search "Автоответ в чат"
|
|
71
80
|
|
|
72
81
|
# Старый синтаксис (без команды) тоже работает
|
|
73
|
-
|
|
82
|
+
allure-cli "Автоответ в чат"
|
|
74
83
|
|
|
75
84
|
# Показать справку
|
|
76
|
-
|
|
77
|
-
|
|
85
|
+
allure-cli search
|
|
86
|
+
allure-cli search --help
|
|
78
87
|
```
|
|
79
88
|
|
|
80
89
|
**Примеры:**
|
|
81
90
|
|
|
82
91
|
```bash
|
|
83
92
|
# Поиск по подстроке названия — выводит id и name с цветами
|
|
84
|
-
|
|
93
|
+
allure-cli search "Автоответ в чат"
|
|
85
94
|
|
|
86
95
|
# Поиск по ID (число)
|
|
87
|
-
|
|
96
|
+
allure-cli search 12345
|
|
88
97
|
|
|
89
98
|
# Только ID, по одному на строку (без цветов)
|
|
90
|
-
|
|
99
|
+
allure-cli search -q "Автоответ в чат"
|
|
91
100
|
|
|
92
101
|
# Без цветов
|
|
93
|
-
|
|
102
|
+
allure-cli search --no-color "Автоответ в чат"
|
|
94
103
|
|
|
95
104
|
# Параметры через аргументы
|
|
96
|
-
|
|
105
|
+
allure-cli search --url https://allure-testops.example.com --project 211 --token $ALLURE_TOKEN "запрос"
|
|
97
106
|
```
|
|
98
107
|
|
|
99
108
|
**Вывод:**
|
|
109
|
+
|
|
100
110
|
- В обычном режиме: номер, ID (синий), название (циан), и fullName (серый) если отличается
|
|
101
111
|
- Результаты с цветной подсветкой для лучшей читаемости
|
|
102
112
|
- В quiet режиме (`-q`): только ID, по одному на строку (без цветов)
|
|
103
113
|
|
|
104
114
|
**Пример вывода:**
|
|
115
|
+
|
|
105
116
|
```
|
|
106
117
|
Found 3 test cases:
|
|
107
118
|
|
|
@@ -114,6 +125,7 @@ Found 3 test cases:
|
|
|
114
125
|
```
|
|
115
126
|
|
|
116
127
|
Где:
|
|
128
|
+
|
|
117
129
|
- `12345`, `12389`, `12401` — синий, жирный (ID)
|
|
118
130
|
- `User login...` — циан (название)
|
|
119
131
|
- `tests.auth...` — серый (fullName)
|
|
@@ -127,27 +139,28 @@ Found 3 test cases:
|
|
|
127
139
|
**Проблема:** Когда в автотестах меняется название шагов или имя сценария, Allure генерирует новый ID. В БД остаётся старый тест, который больше не выполняется и не поддерживается.
|
|
128
140
|
|
|
129
141
|
**Решение:** Команда `find-orphaned` ищет такие тесты по двум критериям:
|
|
142
|
+
|
|
130
143
|
1. Тест не обновлялся N дней (по умолчанию 30)
|
|
131
144
|
2. Есть другие тесты с похожими названиями (similarity >= 0.75)
|
|
132
145
|
|
|
133
146
|
```bash
|
|
134
147
|
# Найти осиротевшие тесты (по умолчанию: неактивны 30+ дней + similarity >= 0.75)
|
|
135
|
-
|
|
148
|
+
allure-cli find-orphaned
|
|
136
149
|
|
|
137
150
|
# Только неактивные тесты (без проверки схожести)
|
|
138
|
-
|
|
151
|
+
allure-cli find-orphaned --days 60
|
|
139
152
|
|
|
140
153
|
# Только тесты с похожими названиями (без проверки неактивности)
|
|
141
|
-
|
|
154
|
+
allure-cli find-orphaned --similarity 0.8
|
|
142
155
|
|
|
143
156
|
# Оба критерия одновременно
|
|
144
|
-
|
|
157
|
+
allure-cli find-orphaned --days 60 --similarity 0.8
|
|
145
158
|
|
|
146
159
|
# Только ID (для скриптов)
|
|
147
|
-
|
|
160
|
+
allure-cli find-orphaned -q
|
|
148
161
|
|
|
149
162
|
# Интерактивное удаление найденных тестов
|
|
150
|
-
|
|
163
|
+
allure-cli find-orphaned --delete
|
|
151
164
|
```
|
|
152
165
|
|
|
153
166
|
**Параметры:**
|
|
@@ -164,6 +177,7 @@ allure_cli find-orphaned --delete
|
|
|
164
177
|
**Цветной вывод:**
|
|
165
178
|
|
|
166
179
|
По умолчанию результаты выводятся с цветами для лучшей читаемости:
|
|
180
|
+
|
|
167
181
|
- 🔴 **Красный** — осиротевшие тесты (кандидаты на удаление)
|
|
168
182
|
- 🟢 **Зелёный** — высокая схожесть (≥0.9) или свежие тесты (<7 дней)
|
|
169
183
|
- 🟡 **Жёлтый** — средняя схожесть (0.75-0.9) или средний возраст (7-30 дней)
|
|
@@ -172,19 +186,152 @@ allure_cli find-orphaned --delete
|
|
|
172
186
|
- ⚪ **Серый** — второстепенная информация
|
|
173
187
|
|
|
174
188
|
Цвета автоматически отключаются при:
|
|
189
|
+
|
|
175
190
|
- Перенаправлении вывода в файл
|
|
176
191
|
- Переменной окружения `NO_COLOR`
|
|
177
192
|
- Флаге `--no-color`
|
|
178
193
|
|
|
179
194
|
```bash
|
|
180
195
|
# Отключить цвета
|
|
181
|
-
|
|
196
|
+
allure-cli find-orphaned --no-color
|
|
182
197
|
|
|
183
198
|
# Или через переменную окружения
|
|
184
|
-
NO_COLOR=1
|
|
199
|
+
NO_COLOR=1 allure-cli find-orphaned
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
### Команда `delete` (удаление тестов)
|
|
203
|
+
|
|
204
|
+
Удаляет тест-кейсы по ID из CSV файла. Поддерживает форматы CSV с разделителями ',' или ';'.
|
|
205
|
+
|
|
206
|
+
**Пример CSV файла:**
|
|
207
|
+
|
|
208
|
+
```
|
|
209
|
+
id,name
|
|
210
|
+
12345,Test case 1
|
|
211
|
+
12346,Test case 2
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
**Использование:**
|
|
215
|
+
|
|
216
|
+
```bash
|
|
217
|
+
# Удалить тест-кейсы из CSV файла
|
|
218
|
+
allure-cli delete --file test_cases.csv
|
|
219
|
+
|
|
220
|
+
# Удалить тест-кейсы без подтверждения (опасно!)
|
|
221
|
+
allure-cli delete --file test_cases.csv --yes
|
|
222
|
+
|
|
223
|
+
# Удалить тест-кейсы и показать подробный вывод
|
|
224
|
+
allure-cli delete --file test_cases.csv --verbose
|
|
225
|
+
|
|
226
|
+
# Удалить тест-кейсы без получения их деталей (быстрее)
|
|
227
|
+
allure-cli delete --file test_cases.csv --no-fetch
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
**Параметры:**
|
|
231
|
+
|
|
232
|
+
| Параметр | Описание | По умолчанию |
|
|
233
|
+
|----------|----------|--------------|
|
|
234
|
+
| `--file` | Путь к CSV файлу с ID тестов | Обязательный |
|
|
235
|
+
| `--yes` | Пропустить подтверждение удаления | false |
|
|
236
|
+
| `--verbose` | Показать подробный вывод | false |
|
|
237
|
+
| `--no-fetch` | Не получать детали тестов перед удалением | false |
|
|
238
|
+
| `--no-color` | Отключить цветной вывод | false |
|
|
239
|
+
|
|
240
|
+
**Интерактивное подтверждение:**
|
|
241
|
+
Команда по умолчанию запрашивает подтверждение перед удалением каждого теста:
|
|
242
|
+
|
|
243
|
+
- `y` — удалить тест
|
|
244
|
+
- `n` — пропустить
|
|
245
|
+
- `q` — завершить
|
|
246
|
+
|
|
247
|
+
**Пример вывода:**
|
|
248
|
+
|
|
249
|
+
```
|
|
250
|
+
Found 2 test case(s) in CSV file:
|
|
251
|
+
1. ID 12345 - Test case 1
|
|
252
|
+
2. ID 12346 - Test case 2
|
|
253
|
+
|
|
254
|
+
Delete these test cases? [y/N]: y
|
|
255
|
+
|
|
256
|
+
Deleting test cases...
|
|
257
|
+
[1/2] Test case 12345: deleted
|
|
258
|
+
[2/2] Test case 12346: deleted
|
|
259
|
+
|
|
260
|
+
Successfully deleted 2 test case(s)
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
### Команда `create` (создание тестов)
|
|
264
|
+
|
|
265
|
+
Создает новые тест-кейсы из CSV или JSON файла.
|
|
266
|
+
|
|
267
|
+
**Пример CSV файла:**
|
|
268
|
+
|
|
269
|
+
```
|
|
270
|
+
name,description,tags
|
|
271
|
+
"New test case 1","Description for test case 1","tag1;tag2"
|
|
272
|
+
"New test case 2","Description for test case 2","tag3"
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
**Пример JSON файла:**
|
|
276
|
+
|
|
277
|
+
```json
|
|
278
|
+
[
|
|
279
|
+
{
|
|
280
|
+
"name": "New test case 1",
|
|
281
|
+
"description": "Description for test case 1",
|
|
282
|
+
"tags": ["tag1", "tag2"]
|
|
283
|
+
},
|
|
284
|
+
{
|
|
285
|
+
"name": "New test case 2",
|
|
286
|
+
"description": "Description for test case 2",
|
|
287
|
+
"tags": ["tag3"]
|
|
288
|
+
}
|
|
289
|
+
]
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
**Использование:**
|
|
293
|
+
|
|
294
|
+
```bash
|
|
295
|
+
# Создать тест-кейсы из CSV файла
|
|
296
|
+
allure-cli create --file test_cases.csv
|
|
297
|
+
|
|
298
|
+
# Создать тест-кейсы из JSON файла
|
|
299
|
+
allure-cli create --file test_cases.json
|
|
300
|
+
|
|
301
|
+
# Создать тест-кейсы с дополнительными тегами
|
|
302
|
+
allure-cli create --file test_cases.csv --tag "new" --tag "automated"
|
|
303
|
+
|
|
304
|
+
# Создать тест-кейсы и показать подробный вывод
|
|
305
|
+
allure-cli create --file test_cases.csv --verbose
|
|
306
|
+
```
|
|
307
|
+
|
|
308
|
+
**Параметры:**
|
|
309
|
+
|
|
310
|
+
| Параметр | Описание | По умолчанию |
|
|
311
|
+
|----------|----------|--------------|
|
|
312
|
+
| `--file` | Путь к CSV или JSON файлу | Обязательный |
|
|
313
|
+
| `--tag` | Дополнительные теги для всех тестов | [] |
|
|
314
|
+
| `--verbose` | Показать подробный вывод | false |
|
|
315
|
+
| `--no-color` | Отключить цветной вывод | false |
|
|
316
|
+
|
|
317
|
+
**Интерактивный процесс:**
|
|
318
|
+
Команда показывает прогресс создания каждого теста:
|
|
319
|
+
|
|
320
|
+
- `✓` — успешно создан
|
|
321
|
+
- `✗` — ошибка при создании
|
|
322
|
+
|
|
323
|
+
**Пример вывода:**
|
|
324
|
+
|
|
325
|
+
```
|
|
326
|
+
Creating test cases from test_cases.csv...
|
|
327
|
+
[1/2] New test case 1: created (ID: 12347)
|
|
328
|
+
[2/2] New test case 2: created (ID: 12348)
|
|
329
|
+
|
|
330
|
+
Successfully created 2 test case(s)
|
|
185
331
|
```
|
|
186
332
|
|
|
187
333
|
**Логика работы флагов:**
|
|
334
|
+
|
|
188
335
|
- Без флагов: применяются оба критерия (`--days 30 --similarity 0.75`)
|
|
189
336
|
- Только `--days N`: ищет тесты неактивные N+ дней (без проверки схожести)
|
|
190
337
|
- Только `--similarity X`: ищет тесты с похожими названиями (без проверки неактивности)
|
|
@@ -193,6 +340,7 @@ NO_COLOR=1 allure_cli find-orphaned
|
|
|
193
340
|
**Умная нормализация названий:**
|
|
194
341
|
|
|
195
342
|
По умолчанию включена нормализация названий для более точного поиска дубликатов. Удаляется "шум":
|
|
343
|
+
|
|
196
344
|
- **Даты**: `2024-01-15`, `15/01/2024`, `20240115`
|
|
197
345
|
- **Временные метки**: `14:30:45`, Unix timestamps
|
|
198
346
|
- **Версии**: `v1.2.3`, `version 2`
|
|
@@ -200,6 +348,7 @@ NO_COLOR=1 allure_cli find-orphaned
|
|
|
200
348
|
- **Стоп-слова**: `test`, `check`, `verify`, `should`, `when`, `then`, `given`
|
|
201
349
|
|
|
202
350
|
**Примеры:**
|
|
351
|
+
|
|
203
352
|
```
|
|
204
353
|
Оригинал: "Test [TC-123] User login verification 2024-01-15"
|
|
205
354
|
Нормализованное: "user login"
|
|
@@ -211,8 +360,9 @@ NO_COLOR=1 allure_cli find-orphaned
|
|
|
211
360
|
```
|
|
212
361
|
|
|
213
362
|
Чтобы отключить нормализацию (сравнивать названия как есть):
|
|
363
|
+
|
|
214
364
|
```bash
|
|
215
|
-
|
|
365
|
+
allure-cli find-orphaned --no-normalize
|
|
216
366
|
```
|
|
217
367
|
|
|
218
368
|
**Пример вывода:**
|
|
@@ -240,10 +390,11 @@ Found 2 potentially orphaned test(s):
|
|
|
240
390
|
**Интерактивное удаление:**
|
|
241
391
|
|
|
242
392
|
```bash
|
|
243
|
-
|
|
393
|
+
allure-cli find-orphaned --delete
|
|
244
394
|
```
|
|
245
395
|
|
|
246
396
|
Для каждого найденного теста будет предложено:
|
|
397
|
+
|
|
247
398
|
- `y` — удалить тест
|
|
248
399
|
- `n` — пропустить
|
|
249
400
|
- `q` — завершить
|
|
@@ -252,4 +403,5 @@ allure_cli find-orphaned --delete
|
|
|
252
403
|
|
|
253
404
|
Используется схема из [документации ТестОпс](https://docs.qatools.ru/api): API-токен обменивается на JWT через `POST /api/uaa/oauth/token`, далее запросы к API — с заголовком `Authorization: Bearer <jwt>`.
|
|
254
405
|
|
|
255
|
-
JWT кэшируется на диск (`~/.cache/
|
|
406
|
+
JWT кэшируется на диск (`~/.cache/allure-cli/` или `$XDG_CACHE_HOME/allure-cli/`), чтобы не запрашивать новый токен при каждом вызове. При ответе 401 от API кэш сбрасывается и токен запрашивается заново автоматически.
|
|
407
|
+
-e
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: allure-cli
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.4
|
|
4
4
|
Summary: CLI для Allure TestOps: получение Allure ID тест-кейса по названию
|
|
5
5
|
Author: Allure CLI Contributors
|
|
6
6
|
License-Expression: MIT
|
|
7
|
-
Project-URL: Homepage, https://github.com/
|
|
8
|
-
Project-URL: Repository, https://github.com/
|
|
9
|
-
Project-URL: Bug Tracker, https://github.com/
|
|
7
|
+
Project-URL: Homepage, https://github.com/teka1905/allure_cli
|
|
8
|
+
Project-URL: Repository, https://github.com/teka1905/allure_cli
|
|
9
|
+
Project-URL: Bug Tracker, https://github.com/teka1905/allure_cli/issues
|
|
10
10
|
Keywords: allure,testops,testing,qa,cli
|
|
11
11
|
Classifier: Development Status :: 4 - Beta
|
|
12
12
|
Classifier: Intended Audience :: Developers
|
|
@@ -41,7 +41,7 @@ CLI для работы с Allure TestOps. Основная задача — п
|
|
|
41
41
|
pip install allure-cli
|
|
42
42
|
```
|
|
43
43
|
|
|
44
|
-
После установки команда `
|
|
44
|
+
После установки команда `allure-cli` будет доступна в PATH.
|
|
45
45
|
|
|
46
46
|
## Настройка
|
|
47
47
|
|
|
@@ -64,23 +64,32 @@ export ALLURE_TOKEN="<YOUR_TOKEN>"
|
|
|
64
64
|
|
|
65
65
|
## Использование
|
|
66
66
|
|
|
67
|
-
CLI поддерживает
|
|
67
|
+
CLI поддерживает четыре команды:
|
|
68
68
|
|
|
69
69
|
1. **`search`** (по умолчанию) — поиск тест-кейсов по ID или названию
|
|
70
70
|
2. **`find-orphaned`** — поиск осиротевших (устаревших) тестов
|
|
71
|
+
3. **`delete`** — удаление тест-кейсов по ID из CSV файла
|
|
72
|
+
4. **`create`** — создание новых тест-кейсов из CSV или JSON файла
|
|
71
73
|
|
|
72
74
|
**Справка:**
|
|
75
|
+
|
|
73
76
|
```bash
|
|
74
77
|
# Общая справка
|
|
75
|
-
|
|
76
|
-
|
|
78
|
+
allure-cli
|
|
79
|
+
allure-cli --help
|
|
77
80
|
|
|
78
81
|
# Справка по команде search
|
|
79
|
-
|
|
80
|
-
|
|
82
|
+
allure-cli search
|
|
83
|
+
allure-cli search --help
|
|
81
84
|
|
|
82
85
|
# Справка по команде find-orphaned
|
|
83
|
-
|
|
86
|
+
allure-cli find-orphaned --help
|
|
87
|
+
|
|
88
|
+
# Справка по команде delete
|
|
89
|
+
allure-cli delete --help
|
|
90
|
+
|
|
91
|
+
# Справка по команде create
|
|
92
|
+
allure-cli create --help
|
|
84
93
|
```
|
|
85
94
|
|
|
86
95
|
### Команда `search` (поиск тестов)
|
|
@@ -91,41 +100,43 @@ export ALLURE_PROJECT_ID=211
|
|
|
91
100
|
export ALLURE_TOKEN=<ваш_токен>
|
|
92
101
|
|
|
93
102
|
# Поиск по подстроке названия
|
|
94
|
-
|
|
103
|
+
allure-cli search "Автоответ в чат"
|
|
95
104
|
|
|
96
105
|
# Старый синтаксис (без команды) тоже работает
|
|
97
|
-
|
|
106
|
+
allure-cli "Автоответ в чат"
|
|
98
107
|
|
|
99
108
|
# Показать справку
|
|
100
|
-
|
|
101
|
-
|
|
109
|
+
allure-cli search
|
|
110
|
+
allure-cli search --help
|
|
102
111
|
```
|
|
103
112
|
|
|
104
113
|
**Примеры:**
|
|
105
114
|
|
|
106
115
|
```bash
|
|
107
116
|
# Поиск по подстроке названия — выводит id и name с цветами
|
|
108
|
-
|
|
117
|
+
allure-cli search "Автоответ в чат"
|
|
109
118
|
|
|
110
119
|
# Поиск по ID (число)
|
|
111
|
-
|
|
120
|
+
allure-cli search 12345
|
|
112
121
|
|
|
113
122
|
# Только ID, по одному на строку (без цветов)
|
|
114
|
-
|
|
123
|
+
allure-cli search -q "Автоответ в чат"
|
|
115
124
|
|
|
116
125
|
# Без цветов
|
|
117
|
-
|
|
126
|
+
allure-cli search --no-color "Автоответ в чат"
|
|
118
127
|
|
|
119
128
|
# Параметры через аргументы
|
|
120
|
-
|
|
129
|
+
allure-cli search --url https://allure-testops.example.com --project 211 --token $ALLURE_TOKEN "запрос"
|
|
121
130
|
```
|
|
122
131
|
|
|
123
132
|
**Вывод:**
|
|
133
|
+
|
|
124
134
|
- В обычном режиме: номер, ID (синий), название (циан), и fullName (серый) если отличается
|
|
125
135
|
- Результаты с цветной подсветкой для лучшей читаемости
|
|
126
136
|
- В quiet режиме (`-q`): только ID, по одному на строку (без цветов)
|
|
127
137
|
|
|
128
138
|
**Пример вывода:**
|
|
139
|
+
|
|
129
140
|
```
|
|
130
141
|
Found 3 test cases:
|
|
131
142
|
|
|
@@ -138,6 +149,7 @@ Found 3 test cases:
|
|
|
138
149
|
```
|
|
139
150
|
|
|
140
151
|
Где:
|
|
152
|
+
|
|
141
153
|
- `12345`, `12389`, `12401` — синий, жирный (ID)
|
|
142
154
|
- `User login...` — циан (название)
|
|
143
155
|
- `tests.auth...` — серый (fullName)
|
|
@@ -151,27 +163,28 @@ Found 3 test cases:
|
|
|
151
163
|
**Проблема:** Когда в автотестах меняется название шагов или имя сценария, Allure генерирует новый ID. В БД остаётся старый тест, который больше не выполняется и не поддерживается.
|
|
152
164
|
|
|
153
165
|
**Решение:** Команда `find-orphaned` ищет такие тесты по двум критериям:
|
|
166
|
+
|
|
154
167
|
1. Тест не обновлялся N дней (по умолчанию 30)
|
|
155
168
|
2. Есть другие тесты с похожими названиями (similarity >= 0.75)
|
|
156
169
|
|
|
157
170
|
```bash
|
|
158
171
|
# Найти осиротевшие тесты (по умолчанию: неактивны 30+ дней + similarity >= 0.75)
|
|
159
|
-
|
|
172
|
+
allure-cli find-orphaned
|
|
160
173
|
|
|
161
174
|
# Только неактивные тесты (без проверки схожести)
|
|
162
|
-
|
|
175
|
+
allure-cli find-orphaned --days 60
|
|
163
176
|
|
|
164
177
|
# Только тесты с похожими названиями (без проверки неактивности)
|
|
165
|
-
|
|
178
|
+
allure-cli find-orphaned --similarity 0.8
|
|
166
179
|
|
|
167
180
|
# Оба критерия одновременно
|
|
168
|
-
|
|
181
|
+
allure-cli find-orphaned --days 60 --similarity 0.8
|
|
169
182
|
|
|
170
183
|
# Только ID (для скриптов)
|
|
171
|
-
|
|
184
|
+
allure-cli find-orphaned -q
|
|
172
185
|
|
|
173
186
|
# Интерактивное удаление найденных тестов
|
|
174
|
-
|
|
187
|
+
allure-cli find-orphaned --delete
|
|
175
188
|
```
|
|
176
189
|
|
|
177
190
|
**Параметры:**
|
|
@@ -188,6 +201,7 @@ allure_cli find-orphaned --delete
|
|
|
188
201
|
**Цветной вывод:**
|
|
189
202
|
|
|
190
203
|
По умолчанию результаты выводятся с цветами для лучшей читаемости:
|
|
204
|
+
|
|
191
205
|
- 🔴 **Красный** — осиротевшие тесты (кандидаты на удаление)
|
|
192
206
|
- 🟢 **Зелёный** — высокая схожесть (≥0.9) или свежие тесты (<7 дней)
|
|
193
207
|
- 🟡 **Жёлтый** — средняя схожесть (0.75-0.9) или средний возраст (7-30 дней)
|
|
@@ -196,19 +210,152 @@ allure_cli find-orphaned --delete
|
|
|
196
210
|
- ⚪ **Серый** — второстепенная информация
|
|
197
211
|
|
|
198
212
|
Цвета автоматически отключаются при:
|
|
213
|
+
|
|
199
214
|
- Перенаправлении вывода в файл
|
|
200
215
|
- Переменной окружения `NO_COLOR`
|
|
201
216
|
- Флаге `--no-color`
|
|
202
217
|
|
|
203
218
|
```bash
|
|
204
219
|
# Отключить цвета
|
|
205
|
-
|
|
220
|
+
allure-cli find-orphaned --no-color
|
|
206
221
|
|
|
207
222
|
# Или через переменную окружения
|
|
208
|
-
NO_COLOR=1
|
|
223
|
+
NO_COLOR=1 allure-cli find-orphaned
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
### Команда `delete` (удаление тестов)
|
|
227
|
+
|
|
228
|
+
Удаляет тест-кейсы по ID из CSV файла. Поддерживает форматы CSV с разделителями ',' или ';'.
|
|
229
|
+
|
|
230
|
+
**Пример CSV файла:**
|
|
231
|
+
|
|
232
|
+
```
|
|
233
|
+
id,name
|
|
234
|
+
12345,Test case 1
|
|
235
|
+
12346,Test case 2
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
**Использование:**
|
|
239
|
+
|
|
240
|
+
```bash
|
|
241
|
+
# Удалить тест-кейсы из CSV файла
|
|
242
|
+
allure-cli delete --file test_cases.csv
|
|
243
|
+
|
|
244
|
+
# Удалить тест-кейсы без подтверждения (опасно!)
|
|
245
|
+
allure-cli delete --file test_cases.csv --yes
|
|
246
|
+
|
|
247
|
+
# Удалить тест-кейсы и показать подробный вывод
|
|
248
|
+
allure-cli delete --file test_cases.csv --verbose
|
|
249
|
+
|
|
250
|
+
# Удалить тест-кейсы без получения их деталей (быстрее)
|
|
251
|
+
allure-cli delete --file test_cases.csv --no-fetch
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
**Параметры:**
|
|
255
|
+
|
|
256
|
+
| Параметр | Описание | По умолчанию |
|
|
257
|
+
|----------|----------|--------------|
|
|
258
|
+
| `--file` | Путь к CSV файлу с ID тестов | Обязательный |
|
|
259
|
+
| `--yes` | Пропустить подтверждение удаления | false |
|
|
260
|
+
| `--verbose` | Показать подробный вывод | false |
|
|
261
|
+
| `--no-fetch` | Не получать детали тестов перед удалением | false |
|
|
262
|
+
| `--no-color` | Отключить цветной вывод | false |
|
|
263
|
+
|
|
264
|
+
**Интерактивное подтверждение:**
|
|
265
|
+
Команда по умолчанию запрашивает подтверждение перед удалением каждого теста:
|
|
266
|
+
|
|
267
|
+
- `y` — удалить тест
|
|
268
|
+
- `n` — пропустить
|
|
269
|
+
- `q` — завершить
|
|
270
|
+
|
|
271
|
+
**Пример вывода:**
|
|
272
|
+
|
|
273
|
+
```
|
|
274
|
+
Found 2 test case(s) in CSV file:
|
|
275
|
+
1. ID 12345 - Test case 1
|
|
276
|
+
2. ID 12346 - Test case 2
|
|
277
|
+
|
|
278
|
+
Delete these test cases? [y/N]: y
|
|
279
|
+
|
|
280
|
+
Deleting test cases...
|
|
281
|
+
[1/2] Test case 12345: deleted
|
|
282
|
+
[2/2] Test case 12346: deleted
|
|
283
|
+
|
|
284
|
+
Successfully deleted 2 test case(s)
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
### Команда `create` (создание тестов)
|
|
288
|
+
|
|
289
|
+
Создает новые тест-кейсы из CSV или JSON файла.
|
|
290
|
+
|
|
291
|
+
**Пример CSV файла:**
|
|
292
|
+
|
|
293
|
+
```
|
|
294
|
+
name,description,tags
|
|
295
|
+
"New test case 1","Description for test case 1","tag1;tag2"
|
|
296
|
+
"New test case 2","Description for test case 2","tag3"
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
**Пример JSON файла:**
|
|
300
|
+
|
|
301
|
+
```json
|
|
302
|
+
[
|
|
303
|
+
{
|
|
304
|
+
"name": "New test case 1",
|
|
305
|
+
"description": "Description for test case 1",
|
|
306
|
+
"tags": ["tag1", "tag2"]
|
|
307
|
+
},
|
|
308
|
+
{
|
|
309
|
+
"name": "New test case 2",
|
|
310
|
+
"description": "Description for test case 2",
|
|
311
|
+
"tags": ["tag3"]
|
|
312
|
+
}
|
|
313
|
+
]
|
|
314
|
+
```
|
|
315
|
+
|
|
316
|
+
**Использование:**
|
|
317
|
+
|
|
318
|
+
```bash
|
|
319
|
+
# Создать тест-кейсы из CSV файла
|
|
320
|
+
allure-cli create --file test_cases.csv
|
|
321
|
+
|
|
322
|
+
# Создать тест-кейсы из JSON файла
|
|
323
|
+
allure-cli create --file test_cases.json
|
|
324
|
+
|
|
325
|
+
# Создать тест-кейсы с дополнительными тегами
|
|
326
|
+
allure-cli create --file test_cases.csv --tag "new" --tag "automated"
|
|
327
|
+
|
|
328
|
+
# Создать тест-кейсы и показать подробный вывод
|
|
329
|
+
allure-cli create --file test_cases.csv --verbose
|
|
330
|
+
```
|
|
331
|
+
|
|
332
|
+
**Параметры:**
|
|
333
|
+
|
|
334
|
+
| Параметр | Описание | По умолчанию |
|
|
335
|
+
|----------|----------|--------------|
|
|
336
|
+
| `--file` | Путь к CSV или JSON файлу | Обязательный |
|
|
337
|
+
| `--tag` | Дополнительные теги для всех тестов | [] |
|
|
338
|
+
| `--verbose` | Показать подробный вывод | false |
|
|
339
|
+
| `--no-color` | Отключить цветной вывод | false |
|
|
340
|
+
|
|
341
|
+
**Интерактивный процесс:**
|
|
342
|
+
Команда показывает прогресс создания каждого теста:
|
|
343
|
+
|
|
344
|
+
- `✓` — успешно создан
|
|
345
|
+
- `✗` — ошибка при создании
|
|
346
|
+
|
|
347
|
+
**Пример вывода:**
|
|
348
|
+
|
|
349
|
+
```
|
|
350
|
+
Creating test cases from test_cases.csv...
|
|
351
|
+
[1/2] New test case 1: created (ID: 12347)
|
|
352
|
+
[2/2] New test case 2: created (ID: 12348)
|
|
353
|
+
|
|
354
|
+
Successfully created 2 test case(s)
|
|
209
355
|
```
|
|
210
356
|
|
|
211
357
|
**Логика работы флагов:**
|
|
358
|
+
|
|
212
359
|
- Без флагов: применяются оба критерия (`--days 30 --similarity 0.75`)
|
|
213
360
|
- Только `--days N`: ищет тесты неактивные N+ дней (без проверки схожести)
|
|
214
361
|
- Только `--similarity X`: ищет тесты с похожими названиями (без проверки неактивности)
|
|
@@ -217,6 +364,7 @@ NO_COLOR=1 allure_cli find-orphaned
|
|
|
217
364
|
**Умная нормализация названий:**
|
|
218
365
|
|
|
219
366
|
По умолчанию включена нормализация названий для более точного поиска дубликатов. Удаляется "шум":
|
|
367
|
+
|
|
220
368
|
- **Даты**: `2024-01-15`, `15/01/2024`, `20240115`
|
|
221
369
|
- **Временные метки**: `14:30:45`, Unix timestamps
|
|
222
370
|
- **Версии**: `v1.2.3`, `version 2`
|
|
@@ -224,6 +372,7 @@ NO_COLOR=1 allure_cli find-orphaned
|
|
|
224
372
|
- **Стоп-слова**: `test`, `check`, `verify`, `should`, `when`, `then`, `given`
|
|
225
373
|
|
|
226
374
|
**Примеры:**
|
|
375
|
+
|
|
227
376
|
```
|
|
228
377
|
Оригинал: "Test [TC-123] User login verification 2024-01-15"
|
|
229
378
|
Нормализованное: "user login"
|
|
@@ -235,8 +384,9 @@ NO_COLOR=1 allure_cli find-orphaned
|
|
|
235
384
|
```
|
|
236
385
|
|
|
237
386
|
Чтобы отключить нормализацию (сравнивать названия как есть):
|
|
387
|
+
|
|
238
388
|
```bash
|
|
239
|
-
|
|
389
|
+
allure-cli find-orphaned --no-normalize
|
|
240
390
|
```
|
|
241
391
|
|
|
242
392
|
**Пример вывода:**
|
|
@@ -264,10 +414,11 @@ Found 2 potentially orphaned test(s):
|
|
|
264
414
|
**Интерактивное удаление:**
|
|
265
415
|
|
|
266
416
|
```bash
|
|
267
|
-
|
|
417
|
+
allure-cli find-orphaned --delete
|
|
268
418
|
```
|
|
269
419
|
|
|
270
420
|
Для каждого найденного теста будет предложено:
|
|
421
|
+
|
|
271
422
|
- `y` — удалить тест
|
|
272
423
|
- `n` — пропустить
|
|
273
424
|
- `q` — завершить
|
|
@@ -276,4 +427,5 @@ allure_cli find-orphaned --delete
|
|
|
276
427
|
|
|
277
428
|
Используется схема из [документации ТестОпс](https://docs.qatools.ru/api): API-токен обменивается на JWT через `POST /api/uaa/oauth/token`, далее запросы к API — с заголовком `Authorization: Bearer <jwt>`.
|
|
278
429
|
|
|
279
|
-
JWT кэшируется на диск (`~/.cache/
|
|
430
|
+
JWT кэшируется на диск (`~/.cache/allure-cli/` или `$XDG_CACHE_HOME/allure-cli/`), чтобы не запрашивать новый токен при каждом вызове. При ответе 401 от API кэш сбрасывается и токен запрашивается заново автоматически.
|
|
431
|
+
-e
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "allure-cli"
|
|
7
|
-
version = "0.2.
|
|
7
|
+
version = "0.2.4"
|
|
8
8
|
description = "CLI для Allure TestOps: получение Allure ID тест-кейса по названию"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.10"
|
|
@@ -26,9 +26,9 @@ classifiers = [
|
|
|
26
26
|
]
|
|
27
27
|
|
|
28
28
|
[project.urls]
|
|
29
|
-
Homepage = "https://github.com/
|
|
30
|
-
Repository = "https://github.com/
|
|
31
|
-
"Bug Tracker" = "https://github.com/
|
|
29
|
+
Homepage = "https://github.com/teka1905/allure_cli"
|
|
30
|
+
Repository = "https://github.com/teka1905/allure_cli"
|
|
31
|
+
"Bug Tracker" = "https://github.com/teka1905/allure_cli/issues"
|
|
32
32
|
|
|
33
33
|
[project.scripts]
|
|
34
|
-
|
|
34
|
+
allure-cli = "allure_cli.cli:main"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|