e1c-test-tools
v0.1.2
Published
Набор инструментов для тестирования (предварительная версия)
Downloads
11
Maintainers
Readme
1C enterprise test tools
Набор инструментов для тестирования (предварительная версия)
Установка
npm install -D e1c-test-tools
или
yarn add -D e1c-test-tools
Дополнительно необходимо установить jest
npm install -D jest
или
yarn add -D jest
и в случае с моими примерами ts-jest с указанными зависимостями.
Настройка
Переменные окружения .env
Основные настройки на данный момент хранятся в .dev
, пример настроек в .sample-env (то есть в каталоге проекта создаем файл .dev
и добавляем после знака равно соответствующие настройки):
BROKER_HOST
иBROKER_PORT
(необязательно) соответственно хост и порт сервиса обмена сообщениями с 1С, по умолчанию127.0.0.1:3000
PATH_TO_E1C_EXECUTABLE
(требуется) путь к запускаемому файлу 1С предприятиеE1C_DB_TYPE
(требуется) тип базы данных 1С предприятияF
(файловая) илиS
(серверная)E1C_DB_PATH
(требуется) путь к базе данных 1С предприятия, так как это указано в документации для соответствующего типа БД.E1C_USER
иE1C_USER
(требуется, если есть авторизация) пользователь и пароль базы 1С предприятия аналогично флагам/N
и/P
в документацииPATH_TO_EXTERNAL_BIN_FILE
(необязательно) путь к файлу внешнего отчета или обработки, который планируется тестировать, на данный момент возможно указать только один файлPATH_TO_MOCKED_EXTERNAL_BIN_FILES
(необязательно) путь к директории, где по-вашему мнению должны располагаться отчеты/обработки подготовленные к тестированиюPATH_TO_TESTER_EXTERNAL_BIN_FILE
(необязательно) путь к файлу обработки, которая используется для тестирования. Если не указывать, то используется обработка по умолчанию.
Настройка jest
npx ts-jest config:init
или
yarn ts-jest config:init
Для js вместо этого нужно выполнить jest --init
, с использованием npx
или yarn
соответственно, или без, если jest
установлен глобально.
Далее для глобальных сетапа и тирдауна необходимо добавить в jest.config.js
следующие поля:
'globalSetup': './node_modules/e1c-test-tools/dist/e1c-test-tools/test-tools/helpers/jest-global-setup.js',
'globalTeardown': './node_modules/e1c-test-tools/dist/e1c-test-tools/test-tools/helpers/jest-global-teardown.js',
Они обеспечивают запуск сервиса брокера и 1С предприятия, а так же подготовку внешних отчетов/обработок для тестирования.
Использование
Пример тестов можно посмотреть в репозитории проекта. Там же можно посмотреть пример недомока, который в дальнейшем планируется генерировать автоматически, для более удобного написания тестов.
Чтобы каждый раз для запуска тестов не ждать, пока запустится окружение, можно воспользоваться скриптом start-up-test-env
npx start-up-test-env
или
yarn start-up-test-env
Аналогично запускаются другие скрипты:
shut-down-test-env
предназначен для остановки работы 1С предприятияstop-polling
предназначен для остановки цикла опроса сервиса брокера со стороны 1С предприятия
Само выполнение тестов запускается
npx jest
или
yarn jest
Дополнительно
PS: На ванильном js проект не тестировался, но есть мнение, что все будет хорошо :)