|
| 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 | + |
| 19 | + |
| 20 | +После установки откройте vscode в чистом проекте и в панеле управления введите: |
| 21 | + |
| 22 | +``` |
| 23 | +Install Testplane |
| 24 | +``` |
| 25 | + |
| 26 | + |
| 27 | + |
| 28 | +### Запуск тестов |
| 29 | + |
| 30 | +#### Из сайдбара в панеле для тестирования |
| 31 | + |
| 32 | +Панель для тестирования можно открыть кликнув на значок тестирования в панели действий. |
| 33 | + |
| 34 | + |
| 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 | + |
| 84 | + |
| 85 | +#### С настройкой `REPL` |
| 86 | + |
| 87 | +ри клике в чекбокс `Enable REPL` и последующем запуске теста (в REPL режиме можно одновременно запустить только один тест), он будет запущен в специальном REPL режиме . Подробнее про этот режим можно прочитать <a href="/ru/docs/v8/command-line/#testplane-repl">тут</a>. |
| 88 | + |
| 89 | + |
| 90 | + |
| 91 | +### Фильтрация тестов в сайдбаре панели тестирования |
| 92 | + |
| 93 | +Чтобы в дереве отобразить только тесты в определенном браузере необходимо ввести тег `@testplane:browser:your_browser_name` в инпут фильтрации. Чтобы появился саджест можно просто написать `@browser`. Там же можно использовать несколько тегов. |
| 94 | + |
| 95 | + |
| 96 | + |
| 97 | +Так же в инпуте с фильтрацией можно использовать следующие значения: |
| 98 | + |
| 99 | +- строка с названием элемента дерева (папка/файл/сьют/тест/браузер); |
| 100 | +- тег `@doc` - для отображения тестов из активного файла в текстовом редакторе; |
| 101 | +- тег `@openedFiles` - для отображения тестов во всех открытых файлах в текстовом редакторе; |
| 102 | +- тег `@executed` - для отображения выполняющихся тестов; |
| 103 | +- тег `@failed` - для отображения упавших тестов. |
| 104 | + |
| 105 | +### Перезапуск Testplane |
| 106 | + |
| 107 | +С помощью кнопки `Refresh Tests` в сайдбаре можно перезапустить Testplane. В этом случае перечитается конфиг и тесты. Пригодится в случае если вы добавили новый тест в файл (вотчинг тестовых файлов пока не поддерживается) или произошла какая-то критическая ошибка. |
| 108 | +Так же обновление дерева тестов выполняется автоматически при изменении конфига. |
| 109 | + |
| 110 | + |
| 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 |
0 commit comments