Створення тестів одиниць за допомогою режимів перегляду чату

Завершено

Перегляд чату в Visual Studio Code надає три вбудовані агенти, які можна використовувати для створення модульних тестів: Ask, Plan і Agent. Кожен агент має свої сильні сторони, і найкращий агент залежить від конкретного завдання.

Налаштуйте свою чат-сесію

Коли ви починаєте чат, три варіанти формують реакцію ШІ:

  • Тип агента: визначає, куди працює агент. Виберіть тип у випадаючому меню Target Агента у режимі чату. Виберіть Local , щоб запустити агент інтерактивно в редакторі з повним доступом до вашого робочого простору, інструментів і моделей. Інші варіанти включають Copilot CLI, хмару та сторонніх провайдерів.
  • Агент: визначає роль або персону ШІ. Виберіть агента з точки вибору агента у вигляді чату. Три вбудовані місцеві агенти — це Ask, Plan і Agent.
  • Рівень дозволу: контролює, скільки автономії має агент для виклику інструментів і термінальних команд. Опції: Default Approvals, Bypass Approvals та Autopilot.

Агенти Ask, Plan і Agent розроблені для роботи з локальними цільовими агентами, і кожен агент оптимізований для різних типів взаємодій:

  • Агент Ask оптимізований для запитань про ваші кодові проєкти, теми програмування та загальні технологічні концепції.
  • Агент плану оптимізований для створення структурованого покрокового плану реалізації перед написанням будь-якого коду.
  • Агент оптимізований для автономних робочих процесів програмування, що охоплюють кілька файлів і термінальних команд.

Важливо

Коли ви використовуєте перегляд чату з агентом, GitHub Copilot може робити кілька преміум-запитів для виконання одного завдання. Преміум-запити можна використовувати для підказок, ініційованих користувачами, та подальших дій, які GitHub Copilot виконує від вашого імені. Загальна кількість використаних преміум-запитів залежить від складності завдання, кількості кроків і вибраної моделі.

Використовуйте агент Ask для створення модульних тестів

Агент Ask можна використовувати для аналізу робочого простору, а потім створення юніт-тестів. Агент Ask корисний, коли ви хочете створити тести для кількох функцій або методів у файлі, або коли хочете створити тести для цілого файлу.

Щоб створити юніт-тести за допомогою агента Ask, виконайте наступні кроки:

  1. Відкрийте файл із кодом, який потрібно перевірити.

  2. Відкрийте перегляд чату та почніть нову сесію чату за допомогою агента Запитати.

  3. Додавання контексту до сеансу чату.

    • Ви можете додати контекст до чату, перетягуючи файли з огляду провідника Visual Studio Code у перегляд чату. Також можна скористатися кнопкою Додати контекст .
    • Ви можете відкрити зовнішні файли в редакторі коду, щоб включити ресурси, які не входять до робочої області, і використовувати їх для надання певного контексту. Наприклад, ви можете відкрити файли markdown, які містять рекомендації співавтора або контактну інформацію, а потім скористатися кнопкою Додати контекст , щоб додати їх до контексту подання чату.
    • Ви можете використовувати Copilot Chat з контекстом вашого проєкту, щоб направляти підказки та генерувати більш релевантні пропозиції. Це особливо корисно при створенні тестів для кількох функцій або методів у файлі, або при генерації тестів для всього файлу.
  4. Введіть запит із запитом на перевірки одиниці у файлі.

    • Наприклад: «I need to create unit tests for the code in this file. The tests should be written in Python and use the unittest framework. Please generate the tests and explain how they work.»
  5. Перегляньте запропоновані тести на одиницю та уточніть результати, використовуючи оновлені підказки, якщо необхідно.

  6. Переміщення рекомендованих тестів на одиницю до тестового файлу.

    • Наприклад, створіть тестовий файл у тому самому каталозі, що й файл коду, а потім вставте у файл рекомендовані перевірки одиниць.
    • Ви можете використовувати агент Ask для пропозицій оновлень для конкретних тестів після створення тестового файлу або використовувати інші інструменти GitHub Copilot для допомоги з оновленнями.
    • Ви також можете скористатися кнопкою Apply in Editor , щоб застосувати запропоновані юніт-тести безпосередньо до файлу коду.
  7. Збережіть тестовий файл.

    • Тестові файли зазвичай зберігаються в окремому каталозі "тестів" у проекті, настроєному для перевірки одиниць. Параметри залежать від структури проекту та структури тестування.
    • Ви можете використовувати агент Ask для пропозицій оновлень для конкретних тестів після створення тестового файлу або використовувати інші інструменти GitHub Copilot для допомоги з оновленнями.
  8. Запустіть тести, щоб переконатися, що вони проходять і перевіряють функціональність вашого коду.

  9. За потреби уточніть тести, додавши більше тестових випадків або змінивши наявні.

  10. Збережіть файл знову після внесення будь-яких змін до перевірок.

Використовуйте агент Plan для планування юніт-тестів

Агент Plan можна використовувати для створення детального плану впровадження ваших юніт-тестів перед написанням будь-якого коду. Агент плану всебічно досліджує ваше завдання, ставить уточнюючі запитання та складає покроковий план. Після перегляду та затвердження плану ви можете передати його агенту для впровадження.

Щоб спланувати юніт-тести за допомогою агента плану, дотримуйтесь таких кроків:

  1. Відкрийте файл із кодом, який потрібно перевірити.

  2. Відкрийте перегляд чату та почніть нову сесію чату за допомогою агента плану. Ви можете вибрати «Планувати » у випадаючому меню агентів або ввести /plan його після опису завдання.

  3. Введіть запит, який описує юніт-тести, які ви хочете створити.

    • Наприклад: «I need to create unit tests for the code in this file. The tests should be written in Python and use the unittest framework. Create a test file in the same directory as the code file.»
  4. Відповідайте на всі уточнюючі питання, які ставить агент плану після дослідження вашого завдання.

    • Агент плану може ставити запитання для вирішення неоднозначностей перед складенням плану.
  5. Ознайомтеся з запропонованим проєктом плану та надайте зворотний зв'язок для ітерації.

    • Агент Плану надає загальний підсумок, розподіл кроків, етапи верифікації тестування та задокументовані рішення, прийняті під час планування.
    • Залишайтеся в агенті плану, щоб уточнити свій план перед реалізацією. Ви можете ітерувати кілька разів, щоб уточнити вимоги, скоригувати обсяг або надати додатковий контекст.
  6. Після завершення роботи використовуйте кнопки для початку реалізації плану або для відкриття плану в редакторі для подальшого перегляду.

    • Ви можете обрати реалізацію плану в тому ж чаті або запустити сесію фонового чи хмарного агента, щоб працювати над реалізацією автономно.
    • Починаючи реалізацію плану, ви все одно можете надати уточнюючі інструкції, наприклад «Починайте з інтерфейсу» або «лише кроки 1 і 2».

Використовуйте агент для створення юніт-тестів

Агент можна використовувати для автоматизації завдань у вашому процесі юніт-тестування. Наприклад, ви можете використовувати агент для створення тестового проєкту, створення тестових файлів, запуску тестів, генерації тестних звітів або виконання інших завдань, пов'язаних з юніт-тестуванням. Агент найкраще підходить для створення юніт-тестів, які вимагають глибшого розуміння проєкту.

Щоб створити модульні тести за допомогою агента, виконайте такі кроки:

  1. Відкрийте файл із кодом, який потрібно перевірити.

  2. Відкрийте перегляд чату і почніть нову сесію чату за допомогою агента.

  3. Нехай Агент визначає контекст.

    Під час використання агента GitHub Copilot автоматично визначає відповідний контекст і файли для редагування. Ви також можете додати контекст явно за допомогою кнопки «Додати контекст » або перетягуючи файли у перегляд чату.

  4. За потреби клацніть піктограму Знаряддя, щоб настроїти засоби, які можна використовувати для відповіді на ваш запит.

    • Ви можете вибрати інструменти, які потрібно використовувати для відповіді на ваш запит. Наприклад, ви можете вибрати інструмент Test Explorer для запуску тестів або інструмент Terminal для виконання команд.
    • Ви також можете обрати інструмент GitHub Copilot для використання можливостей генерації коду GitHub Copilot.
  5. Введіть запит, який визначає призначені завдання.

    • Наприклад: «Ensure that a suitable unit tests project is prepared for the selected code file. Create a test file in the unit test project that includes unit tests for all methods in the selected file. Unit tests should be written in C# and use the xUnit framework. Run the tests to ensure expected results.»
  6. Слідкуйте за прогресом Агента під час виконання завдань.

    • Підтвердьте виклик інструментів і команди терміналів. Ви можете підтвердити або відхилити виклики інструментів і термінальні команди, які пропонує агент. Наприклад, можна підтвердити команду для виконання тестів або команду створення тестового звіту.
    • За потреби перервати Агента. Ви можете перервати Агента, якщо хочете зупинити завдання, які він виконує. Наприклад, ви можете перервати агента, якщо хочете змінити контекст або інструменти, які використовуються.
  7. Переглядайте файли, які Агент створив або оновив під час зазначених завдань, а потім зберігайте або відкидайте оновлення.

    • За потреби можна скористатися новими підказками, щоб виправити або покращити певні тести.

Зведення

Перегляд чату GitHub Copilot надає три вбудовані агенти, які можна використовувати для створення модульних тестів: Ask, Plan і Agent. Кожен агент має свої сильні сторони, і найкращий агент залежить від конкретного завдання. Агент Ask оптимізований для запитань про ваші кодові проєкти, теми програмування та загальні технологічні концепції. Агент плану оптимізований для створення структурованого покрокового плану реалізації перед написанням будь-якого коду. Агент оптимізований для запуску робочого процесу агентного кодування.