Как добавить приспособления для модульных тестов Strapi

#unit-testing #fixtures #strapi

#модульное тестирование #приспособления #страпи #strapi

Вопрос:

Как я могу добавить приспособления для тестирования проекта Strapi с помощью jest?

и есть ли способ добавить такие данные тестирования в Strapi, как приспособления в ruby on rails?

это пример приспособлений rubyOnRail:

 # lo amp; behold!  I am a YAML comment!
david:
 name: David Heinemeier Hansson
 birthday: 1979-10-15
 profession: Systems development
 
steve:
 name: Steve Ross Kellock
 birthday: 1974-09-27
 profession: guy with keyboard
  

Комментарии:

1. Есть какие-нибудь новости по этому поводу?

2. Похоже, что для Strapi 3 существует по крайней мере два плагина: strapi-plugin-import-export-content и strapi-plugin-seeds , но ни один из них не был обновлен для Strapi 4.

Ответ №1:

strapi-плагин-импорт-экспорт-содержание было обновлено ПО Strapi4 , но требует некоторой работы, чтобы придать экспортированные данные в свой API (авторизация в основном). Кроме того, отдельные типы по умолчанию не имеют кнопок экспорта / импорта, поэтому я не знаю, работают ли с ними import/export API.

На данный момент самое простое решение, которое я нашел, — это установить выделенную sqlite базу данных для тестов с исходными данными.

!!! Beware of the credentials of your super admin account if you do that, DO NOT PUSH TRUE CREDENTIALS ONLINE, they could remain in old commits for ever !!!

Вот несколько скриптов, которые я использую для экспорта / импорта светильников:

 #!/usr/bin/env bash
# tests/export_sqlite_fixtures.sh
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" amp;> /dev/null amp;amp; pwd )

sqlite3 "$SCRIPT_DIR/../.tmp/data.db" ".output $SCRIPT_DIR/fixtures.sql.dump" ".dump"
  
 #!/usr/bin/env bash
# tests/import_sqlite_fixtures.sh
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" amp;> /dev/null amp;amp; pwd )

sqlite3 "$SCRIPT_DIR/../.tmp/data.db" ".output $SCRIPT_DIR/fixtures.sql.dump" ".dump"
  

Затем в моем канале CI я просто добавляю (действие Github здесь):

     - name: Populate sqlite db with fixtures
      run: ./tests/import_sqlite_fixtures.sh

    - name: build Strapi
      run: yarn build

    ...

  

ПРИМЕЧАНИЕ: Расширение экспорта заключается в том, .sql.dump чтобы сохранить *.sql правило в .gitignore