Spec-Zone.ru › Electron

Тестирование

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

Этот репозиторий поставляется с правилами проверки кода для JavaScript и C++ — а также с модульными и интеграционными тестами. Чтобы узнать больше об стиле кодирования Electron, пожалуйста, ознакомьтесь с документом стиля кодирования.

Проверка кода​

Чтобы убедиться, что ваши изменения соответствуют стилю кодирования Electron, запустите npm run lint, который выполнит различные проверки стиля кода в зависимости от тех областей кода, которые затрагивают ваши изменения.

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

Модульные тесты​

Если вы не используете build-tools, убедитесь, что имя, которое вы настроили для локальной сборки Electron, является одним из Testing, Release, Default, или вы установили process.env.ELECTRON_OUT_DIR. Без этих настроек Electron не сможет выполнить некоторые предварительные этапы тестирования.

Чтобы запустить все модульные тесты, выполните npm run test. Модульные тесты представляют собой приложение Electron (не удивляйтесь!), которое можно найти в папке spec. Обратите внимание, что оно имеет собственные package.json, и поэтому его зависимости не определены в главном package.json.

Чтобы запустить только тесты в определённом процессе, выполните npm run test --runners=PROCESS, где PROCESS является одним из main или remote.

Чтобы запустить только определённые тесты, соответствующие шаблону, выполните npm run test -- -g=PATTERN, заменив PATTERN регулярным выражением, которое соответствует тестам, которые вы хотите запустить. Например: если вы хотите запустить только тесты IPC, вы выполните npm run test -- -g ipc.

Тесты Node.js​

Если вы внесли изменения, которые могут повлиять на способ интеграции Node.js в Electron, у нас есть тестовый запуск, который выполняет все тесты из Node.js, используя пользовательскую вилку Node.js от Electron.

Чтобы запустить все тесты Node.js:

$ node script/node-spec-runner.js

Чтобы запустить один тест Node.js:

$ node script/node-spec-runner.js parallel/test-crypto-keygen

где аргумент, переданный в запуск, — это путь к тесту в дереве исходного кода Node.js.

Тестирование на устройствах Windows 10​

Дополнительные шаги для запуска модульного теста:​

  1. Необходимо установить Visual Studio 2019.

  2. Заголовки Node должны быть скомпилированы для вашей конфигурации.

    ninja -C out\Testing third_party\electron_node:headers
  3. Файл electron.lib необходимо скопировать как node.lib.

    cd out\Testing
    mkdir gen\node_headers\Release
    copy electron.lib gen\node_headers\Release\node.lib

Отсутствующие шрифты​

На некоторых устройствах Windows 10 шрифт Meiryo не установлен, что может привести к сбою теста подстановки шрифтов. Для установки Meiryo:

  1. Нажмите клавишу Windows и найдите Управление дополнительными компонентами.
  2. Нажмите Добавить компонент.
  3. Выберите Дополнительные японские шрифты и нажмите Установить.

Измерения пикселей​

Некоторые тесты, которые полагаются на точные измерения пикселей, могут работать неправильно на устройствах с настройками экрана Hi-DPI из-за ошибок с плавающей точкой. Чтобы правильно запустить эти тесты, убедитесь, что масштабирование устройства установлено на 100%.

Чтобы настроить масштабирование экрана:

  1. Нажмите клавишу Windows и найдите Параметры экрана.
  2. В разделе Масштаб и расположение убедитесь, что устройство установлено на 100%.

© GitHub Inc.
Licensed under the MIT license.
https://www.electronjs.org/docs/latest/development/testing

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API