Skip to content

Commit fdeb3d1

Browse files
committed
chore: write article about vscode extension
1 parent c95725e commit fdeb3d1

12 files changed

+132
-0
lines changed

blog/vscode-extension.mdx

+131
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,131 @@
1+
---
2+
title: Расширение для VS Code
3+
slug: vscode-extension
4+
hide_table_of_contents: false
5+
date: 2024-09-25T22:00
6+
---
7+
8+
import Admonition from "@theme/Admonition";
9+
10+
Для Testplane реализовали расширение для [VS Code][vscode] с помощью которого можно запускать тесты, собирать проект с нуля и удобно работать с <a href="/ru/docs/v8/command-line/#testplane-repl">REPL режимом</a>.
11+
12+
<!-- truncate -->
13+
14+
### Установка
15+
16+
Установите расширение со страницы [VS Code Marketplace][vscode-testplane-marketplace] или на вкладке расширений в VS Code IDE.
17+
18+
![Расширение в VS Code IDE](/img/blog/vscode-extension/testplane-in-extensions-panel.png)
19+
20+
После установки откройте vscode в чистом проекте и в панеле управления введите:
21+
22+
```
23+
Install Testplane
24+
```
25+
26+
![Установка Testplane](/img/blog/vscode-extension/testplane-install.png)
27+
28+
### Запуск тестов
29+
30+
#### Из сайдбара в панеле для тестирования
31+
32+
Панель для тестирования можно открыть кликнув на значок тестирования в панели действий.
33+
34+
![Открытие панели для тестирования](/img/blog/vscode-extension/testing-sidebar.png)
35+
36+
В левой части экрана отображается сайдбар с деревом всех прочитанных тестов. В дереве сверху вниз отображаются:
37+
38+
- название папки;
39+
- название файла;
40+
- название сьюта (`describe` при использовании [bdd интерфейса][mocha-bdd-interface]);
41+
- название теста (`it` при использовании [bdd интерфейса][mocha-bdd-interface]);
42+
- название браузера.
43+
44+
У каждого из элементов дерева отображается кнопка `Run Test` с помощью которой можно запустить тесты. Если нажать на `Run Test` у элемента:
45+
46+
- папки, файла или сьюта, то запустятся все дочерние тесты во всех браузерах;
47+
- теста, то запустится выбранный тест во всех браузерах;
48+
- браузера, то запустится один тест в одном браузере.
49+
50+
Пример запуска тестов из сайдбара:
51+
52+
<video width="400" height="300" controls="controls">
53+
<source
54+
src="video/blog/vscode-extension/run-tests-from-sidebar.mp4"
55+
type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'
56+
/>
57+
Тег video не поддерживается вашим браузером.
58+
<a href="video/blog/vscode-extension/run-tests-from-sidebar.mp4">Скачайте видео</a>.
59+
</video>
60+
61+
Так же можно выполнить запуск всех тестов с помощью кнопки `Run Tests`.
62+
63+
#### Из текстового редактора
64+
65+
Если в текстовом редакторе открыть Testplane тест, то рядом с каждым сьютом (`describe`) и тестом (`it`) будет отображаться зеленый треугольник для запуска сьюта/теста. Если нажать левой кнопкой мыши, то запустится тест во всех браузерах и после его выполнения отобразится результат в виде иконки.
66+
Если нажать на зеленый треугольник правой клавишей мыши, то можно запустить тест в одном из браузеров.
67+
68+
Пример запуска тестов из текстового редактора:
69+
70+
<video width="400" height="300" controls="controls">
71+
<source
72+
src="video/blog/vscode-extension/run-tests-from-editor.mp4"
73+
type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'
74+
/>
75+
Тег video не поддерживается вашим браузером.
76+
<a href="video/blog/vscode-extension/run-tests-from-editor.mp4">Скачайте видео</a>.
77+
</video>
78+
79+
#### С настройкой `devtools`
80+
81+
В сайдбаре в панели для тестирования так же отображается секция с названием Testplane в которой отображаются настройки, которые можно включить и выключить. При клике в чекбокс `Enable devtools` и последующем запуске тестов, браузеры будут подниматься с использованием CDP протокола (вне зависимости, что указано в конфиге). Подробнее про этот режим можно прочитать <a href="/ru/docs/v8/guides/how-to-use-cdp/">тут</a>.
82+
83+
![Включение опции devtools](/img/blog/vscode-extension/enable-devtools.png)
84+
85+
#### С настройкой `REPL`
86+
87+
ри клике в чекбокс `Enable REPL` и последующем запуске теста (в REPL режиме можно одновременно запустить только один тест), он будет запущен в специальном REPL режиме . Подробнее про этот режим можно прочитать <a href="/ru/docs/v8/command-line/#testplane-repl">тут</a>.
88+
89+
![Включение опции REPL](/img/blog/vscode-extension/enable-repl.png)
90+
91+
### Фильтрация тестов в сайдбаре панели тестирования
92+
93+
Чтобы в дереве отобразить только тесты в определенном браузере необходимо ввести тег `@testplane:browser:your_browser_name` в инпут фильтрации. Чтобы появился саджест можно просто написать `@browser`. Там же можно использовать несколько тегов.
94+
95+
![Фильтр дерева тестов по указанном браузеру](/img/blog/vscode-extension/filter_sidebar_by_browser.png)
96+
97+
Так же в инпуте с фильтрацией можно использовать следующие значения:
98+
99+
- строка с названием элемента дерева (папка/файл/сьют/тест/браузер);
100+
- тег `@doc` - для отображения тестов из активного файла в текстовом редакторе;
101+
- тег `@openedFiles` - для отображения тестов во всех открытых файлах в текстовом редакторе;
102+
- тег `@executed` - для отображения выполняющихся тестов;
103+
- тег `@failed` - для отображения упавших тестов.
104+
105+
### Перезапуск Testplane
106+
107+
С помощью кнопки `Refresh Tests` в сайдбаре можно перезапустить Testplane. В этом случае перечитается конфиг и тесты. Пригодится в случае если вы добавили новый тест в файл (вотчинг тестовых файлов пока не поддерживается) или произошла какая-то критическая ошибка.
108+
Так же обновление дерева тестов выполняется автоматически при изменении конфига.
109+
110+
![Обновление дерева тестов](/img/blog/vscode-extension/refresh-tests.png)
111+
112+
### Текущие ограничения
113+
114+
- версия testplane должна быть 8.20.0 и старше (с версиями ниже запуск тестов работать не будет);
115+
- не поддержаны debug и continuous (auto-run) режимы;
116+
- нет вотчинга добавления/удаления тестов и файлов;
117+
- использование кастомных интерфейсов mocha может приводить к некорректному отображению иконок с зеленой стрелкой для запуска тестов из текстового редактора.
118+
119+
### Заключение
120+
121+
Данная функциональность предоставляет нашим пользователям новые возможности:
122+
123+
- возможность запуска тестов прямо из IDE и просмотр результата выполнения;
124+
- возможность переопределить опции `devtools` и `repl` в UI VS Code без изменения конфига;
125+
- автоматически подхватывать изменения внесенные в конфиг Testplane.
126+
127+
Устанавливайте расширение Testplane для VS Code и приходите с фидбеком. В случае обнаружения проблем, приходите в [issue github](https://github.com/gemini-testing/testplane/issues) — мы вам обязательно поможем!
128+
129+
[vscode]: https://code.visualstudio.com/
130+
[vscode-testplane-marketplace]: https://marketplace.visualstudio.com/items?itemName=gemini-testing.vscode-testplane
131+
[mocha-bdd-interface]: https://mochajs.org/#bdd
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
VS Code extension
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Binary file not shown.
Binary file not shown.

0 commit comments

Comments
 (0)