Power Query тестовой платформы пакета SDK 5a. Тестирование соединителя расширения с помощью Visual Studio Code

Эта многокомпонентная ссылка охватывает настройку и выполнение стандартного набора тестов для разработчиков соединителей Power Query. Эта ссылка предназначена для последовательного выполнения, чтобы убедиться, что среда настроена для тестирования пользовательского соединителя.

Замечание

В этой статье рассматривается тестирование с помощью обозревателя тестов Visual Studio Code. Сведения о методе служебной программы PowerShell см. в статье Power Query.5b. Тестирование соединителя расширения с помощью PowerShell.

До сих пор вы выполнили следующие действия:

  • Настройка среды
  • Отправлены тестовые данные
  • Скачан набор тестов
  • Сведения о различных форматах файлов и их функциональных возможностях

Вы, наконец, готовы к проверке соединителя расширения с помощью набора тестов. В этом разделе рассматривается использование встроенного Test Explorer в Visual Studio Code, который предоставляет широкий пользовательский интерфейс для обнаружения, выполнения и отладки тестов. Эта интеграция использует API тестирования Visual Studio Code test API и выполняет тесты с помощью команды />c2 /> < (см. документацию по PQTest run-compare).

В этом разделе вы:

  • Настройка рабочей области для обозревателя тестов
  • Создание и настройка файла параметров теста
  • Обнаружение и запуск тестов с помощью пользовательского интерфейса
  • Просмотр результатов теста и сравнение выходных данных

Необходимые условия

Чтобы использовать интеграцию обозревателя тестов, убедитесь, что у вас есть следующие предварительные требования:

  • Visual Studio Code: версия 1.100 или более поздняя.

  • расширение пакета SDK Power Query/c0. Убедитесь, что расширение пакета SDK Power Query устанавливается и обновляется до версии 0.7.0 или более поздней. Проект соединителя распознается пакетом SDK Power Query, как указано пакетом SDK Power Query в области обозревателя, где отображаются задачи проекта.

    Screenshot задач в разделе SDK Power Query.

Конфигурация

Чтобы обозреватель тестов мог найти и запустить тесты, необходимо настроить один или несколько конкретных файлов параметров теста и параметры рабочей области Visual Studio Code.

1. Файл параметров теста (.testsettings.json)

Файл .testsettings.json управляет обнаружением тестов. Этот файл функционально идентичен файлу параметров (.settings) в спецификации формата теста, но использует .testsettings.json расширение для явной идентификации обозревателя тестов.

Вы можете создать файл .testsettings.json или перенести существующий файл параметров, переименовав его для использования .testsettings.json расширения. Поместите файл в проект (например, в Settings папку) с необходимой конфигурацией.

Важно: Пути, указанные в .testsettings.json файле (например QueryFilePath, DiagnosticsPathи т. д.), должны быть относительными к расположению самого файла параметров.

Пример:.testsettings.json

{
  "QueryFilePath": "../TestSuites/contoso.query.pq",
  "ParameterQueryFilePath": "../ParameterQueries/contoso.parameterquery.pq",
  "DiagnosticsPath": "../Diagnostics",
  "FailOnMissingOutputFile": true
}

2. Настройка расширения

Необходимо настроить пакет SDK Power Query с расположением параметров теста, файла расширения соединителя и служебной программы PQTest.

  1. Откройте параметры в Visual Studio Code.

    • Параметры рабочей области (для путей для конкретного проекта): откройте палитру команд (CTRL+SHIFT+P или CMD+SHIFT+P), введите параметры: открыть параметры рабочей области (JSON) и выбрать ее.
    • Параметры пользователя (для глобальных путей): откройте палитру команд, введите параметры: откройте параметры пользователя (JSON) и выберите ее.
  2. Добавьте следующие конфигурации:

    • powerquery.sdk.tools.location: абсолютный путь к папке установки PQTest (содержащей PQTest.exe). Этот параметр можно определить в параметрах пользователя или рабочей области .
      • Пример: "C:\\Users\\<username>\\.vscode\\extensions\\powerquery.vscode-powerquery-sdk-<version>\\.nuget\\Microsoft.PowerQuery.SdkTools.<version>\\tools"
    • powerquery.sdk.test.settingsFiles: список обнаруженных файлов параметров теста. Принимает один путь к файлу, путь к каталогу (для обнаружения всех .testsettings.json файлов внутри) или массив путей к файлу или каталогу. (параметр рабочей области )
    • powerquery.sdk.test.ExtensionPaths: список файлов расширения соединителя (.mez) для тестирования. Принимает один путь к файлу или массив путей. Если это не указано, пакет SDK использует powerquery.sdk.defaultExtension (который поддерживает один путь). (параметр рабочей области )

Пример:.vscode/settings.json

{
  "powerquery.sdk.tools.location": "C:\\Users\\<username>\\.vscode\\extensions\\powerquery.vscode-powerquery-sdk-0.7.0-win32-x64\\.nuget\\Microsoft.PowerQuery.SdkTools.2.150.3\\tools",
  "powerquery.sdk.test.settingsFiles": [
    "${workspaceFolder}/Tests/Settings/MyConnector.testsettings.json"
  ],
  "powerquery.sdk.test.ExtensionPaths": [
    "${workspaceFolder}/bin/AnyCPU/Debug/MyConnector.mez"
  ]
}

Tip

Переменные можно использовать для ${workspaceFolder} создания путей относительно корневого каталога проекта. Относительные пути разрешаются settings.json относительно корневого каталога рабочей области.

3. Настройка учетных данных

Если для соединителя требуется проверка подлинности, перед выполнением тестов необходимо сохранить допустимые учетные данные. Пакет SDK Power Query предоставляет задачу для управления учетными данными непосредственно из пользовательского интерфейса Visual Studio Code.

Подробные инструкции см. в разделе Set credential в обзоре пакета SDK Power Query.

Обнаружение тестов

После настройки вы можете обнаружить тесты в представлении обозревателя тестов.

  1. Откройте представление Testing в Visual Studio Code (щелкните значок кавера в строке действий).

  2. Вы увидите перечисленные файлы параметров теста.

  3. Разверните узлы, чтобы просмотреть обнаруженные тесты. Иерархия отражает структуру папок.

    Снимок экрана: анимация, показывающая обнаружение тестов в обозревателе тестов.

Обновление тестов

Если вы добавите новые тесты, измените параметры или обнаружение тестов по какой-то причине завершается ошибкой, вы можете обновить обнаружение:

  • Обновите все тесты: нажмите кнопку "Обновить все тесты" (значок циклической стрелки) в верхней части панели обозревателя тестов для повторного обнаружения тестов для всех файлов параметров. Снимок экрана: анимация, показывающая, как обнаружить все тесты для всех файлов параметров из обозревателя тестов.

  • Обновить тесты, на которые ссылается файл параметров теста: наведите указатель мыши на определенный файл параметров теста и нажмите кнопку "Обновить тесты " (значок циклической стрелки), чтобы повторно обнаружить тесты только для этого файла.

    Снимок экрана: анимация, показывающая, как повторно обнаружить тесты для файла параметров из обозревателя тестов.

Выполнение тестов

Вы можете выполнять тесты на различных уровнях детализации непосредственно из пользовательского интерфейса:

  • Запустите все: выберите значок запуска (значок воспроизведения) в верхней части области.

    Снимок экрана: выполнение всех тестов из обозревателя тестов.

  • Запустите группу или папку: наведите указатель мыши на папку или элемент параметров и нажмите кнопку "Запустить тест ".

    Снимок экрана: выполнение группы тестов из обозревателя тестов.

  • Запуск отдельного теста: наведите указатель мыши на определенный тестовый элемент и нажмите кнопку "Запустить тест ".

Замечание

Если вы запускаете элемент параметров, который еще не обнаружен, расширение автоматически обнаруживает тесты перед их выполнением.

При выполнении тестов значки состояния обновляются в режиме реального времени, чтобы показать ход выполнения (выполнение, передачу или сбой).

Просмотр результатов и отладка

Панель результатов теста (расположенная на нижней панели по умолчанию) отображает необработанные результаты теста из PQTest или любых сообщений об ошибках. Он также содержит список последнего журнала выполнения, показывающий пройденные и неудачные тесты.

Представление диффа для сбоев

Если тест завершается ошибкой, так как выходные данные не соответствуют ожидаемому результату, обозреватель тестов предоставляет встроенное представление диффа. Выберите сбой в области результатов теста, чтобы просмотреть параллельное сравнение фактических и ожидаемых выходных данных.

Снимок экрана: представление диффа в обозревателе тестов, показывающее фактические и ожидаемые выходные данные для неудачного теста.

Диагностика свертывания запросов

Если конфигурация теста включает проверку свертывания запросов (указав значение DiagnosticsPath), расширение также сравнивает созданную диагностику с ожидаемым базовым показателем.

Если тест завершается ошибкой из-за несоответствия диагностики, можно просмотреть дифф между файлами фактических и ожидаемых диагностических данных, выбрав сбой в области результатов теста.

Снимок экрана: представление диффа в обозревателе тестов, показывающее фактическую и ожидаемую диагностику для неудачного теста.

Просмотр ожидаемых выходных данных

Вы можете быстро просмотреть ожидаемый выходной файл (.pqout) для любого теста. Выберите значок представления ожидаемых выходных данных теста (буфер обмена), который отображается при наведении указателя мыши на тест, или щелкните правой кнопкой мыши элемент теста и выберите "Просмотреть ожидаемые выходные данные теста " в контекстном меню. Это действие открывает соответствующий .pqout файл в редакторе.

Снимок экрана: параметр

Troubleshooting

При возникновении проблем проверьте пакет SDK Power Query выходного канала для журналов. Это поможет проверить PQTest run-compare выполнение команды и определить любое непредвиденное поведение.

Распространенные проблемы

  • PQTest.exe не найдено: убедитесь, что powerquery.sdk.tools.location параметр указывает на правильный абсолютный путь к папке установки PQTest.
  • Недопустимые тесты QueryFilePath или нет обнаруженных: убедитесь, что пути в файле параметров теста верны. QueryFilePath должен указывать на допустимый .query.pq файл или каталог, содержащий их. Помните, что относительные .testsettings.json пути находятся относительно самого файла параметров.
  • Расширение файла параметров не делает ничего: если расширение узла в обозревателе тестов не отображает никаких тестов, попробуйте использовать команду "Обновить тесты" (значок обновления в строке с элементом параметров), чтобы снова активировать обнаружение.

Conclusion

В этом разделе показано, как использовать обозреватель тестов Visual Studio Code для эффективного обнаружения, запуска и отладки тестов соединителя. Этот подход на основе пользовательского интерфейса предлагает упрощенную альтернативу инструментам командной строки.

В следующем разделе описано, как добавить собственные пользовательские тесты в платформу.

Дальнейшие действия

Power Query платформа тестирования пакета SDK 6. Добавление тестов