django-smoknur


License
Other
Install
pip install django_smoknur==0.3.20

Documentation

Установка прилоТСния Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅

  • Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅

  • Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² settings.MIDDLEWARE_CLASSES, django_smoknur.middleware.WriteRequests

  • Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² settings.INSTALLED_APPS, django_smoknur

  • Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² urls, ΡƒΡ€Π» прилоТСния:

    from django_smoknur.urls import get_urls
    urlpatterns += get_urls()
    
  • ΠžΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ settings

    • SMOKNUR_EXCLUDE_APP_DUMPDATA - ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈ Π΄Π°ΠΌΠΏΠ΅ Π‘Π” Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
    • SMOKNUR_EXCLUDE_APPS - прилоТСния, ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΈΠ· тСстов, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ 'datalogging, contenttypes, south, sessions, auth.permission, auth.group, auth.message`
    • SMOKNUR_NEW_DJANGO_TESTCASE - Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ фикс для тСста, для Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² Π΄ΠΆΠ°Π½Π³ΠΎ 1.6. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½. Π’ TransactionTestCase, Π² ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ _fixture_setup отсутствуСт Π²Ρ‹Π·ΠΎΠ² call_command('flush', ...), Ρ‡Ρ‚ΠΎ Π½Π° ΠΌΠΎΠΉ взгляд Π½Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Ρ‚.ΠΊ. Π½Π΅ очищаСтся Π‘Π” ΠΏΠ΅Ρ€Π΅Π΄ запуском ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ тСсткСйса.
    • SMOKNUR_PRINT_REQUESTS - Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ запросС, ΡƒΡ€Π» ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½
    • SMOKNUR_PRINT_RESPONSE - Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± ΠΎΡ‚Π²Π΅Ρ‚Π΅ Π½Π° запрос. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½
    • SMOKNUR_PRINT_RESPONSE_SIZE - Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΡ‚Π²Π΅Ρ‚Π° Π½Π° запрос. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ записи сцСнария

  1. БистСма Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Π΄Π΅Π±Π°Π³ Ρ€Π΅ΠΆΠΈΠΌΠ΅

  2. Π—Π°Ρ…ΠΎΠ΄ΠΈΠΌ Π½Π° страничку /smoknur

  3. БохраняСм Π΄Π°ΠΌΠΏ Π‘Π”.

    • БкачаСтся .json Ρ„Π°ΠΉΠ» Π΄Π°ΠΌΠΏΠ° Π‘Π”, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использован Π² качСтсвС фикстур для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ сцСнария.
    • Π€Π°ΠΉΠ»ΠΈΠΊ Π±Ρ‹Π» ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ ./manage.py dumpdata, ΠΈΡΠΊΠ»ΡŽΡ‡Π°Ρ прилоТСния settings.SMOKNUR_EXCLUDE_APP_DUMPDATA.
  4. Π’ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ запись ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

  5. ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π½Π° Π³Π»Π°Π²Π½ΡƒΡŽ страницу ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ с ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ

    • Π’ это врСмя, ΠΌΠΈΠ΄Π»Π²Π°Ρ€Π° smoknur.middleware.WriteRequests Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ всС запросы Π½Π° сСрвСр Π² .dbg Ρ„Π°ΠΉΠ»ΠΈΠΊ, с POST ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ.
  6. Π—Π°Ρ…ΠΎΠ΄ΠΈΠΌ Π½Π° страничку /smoknur

  7. Π’Ρ‹ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ запись ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ

  8. Π‘ΠΊΠ°Ρ‡ΠΈΠ²Π°Π΅ΠΌ ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ

  9. КладСм Ρ„Π°ΠΉΠ»ΠΈΠΊ сцСнария Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π² ΠΏΠ°ΠΏΠΊΡƒ smoknur, ΠΏΡ€ΠΈ нСобходимости Ρ„Π°ΠΉΠ»ΠΈΠΊ фикстур Ρ‚ΡƒΠ΄Π° ΠΆΠ΅.

Как Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ тСсты

  1. ЗапускаСм тСст ./manage.py django-smoknur

  2. На ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ· settings.PROJECTS_APPS создаСтся TestCase, Ссли ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΠ°ΠΏΠΊΡƒ smoknur

    • Если Π² ΠΏΠ°ΠΏΠΊΠ΅ имССтся .json Ρ„Π°ΠΉΠ», ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ использован Π² качСствС Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ фикстуры
    • ВсС .dbg Ρ„Π°ΠΉΠ»Ρ‹ Ρ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ, ΠΈ ΠΏΡ€ΠΎΠ³ΠΎΠ½ΡΡŽΡ‚ΡΡ запросы ΠΊ систСмы ΠΈΠ· этих Ρ„Π°Π»ΠΎΠ².

Π’Π°ΠΊΠΆΠ΅ Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ имССтся ΠΌΠ΅Π½Π΅Π΄ΠΆ ΠΊΠΎΠΌΠ°Π½Π΄Π° load_dbg, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ пСрСдаСтся 1 ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ прилоТСния. Данная ΠΊΠΎΠΌΠ°Π½Π΄Π° отправляСт запросы, находящиСся Π² ΠΏΠ°ΠΏΠΊΠ΅ smoknur прилоТСния. Иногда Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° для востановлСния состояния Π‘Π”, для ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… тСстов. Ѐикстуры прилоТСния ΠΎΠ½Π° Π½Π΅ Π·Π°Π»ΠΈΠ²Π°Π΅Ρ‚.

Π˜ΡΡ‚ΠΎΡ€ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ вСрсии:

0.3.17

  • ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ запросов ΠΏΠΈΡˆΡƒΡ‚ΡΡ Π² ΠΊΡƒΠΊΠΈ, Ρ‡Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π½Π°Ρ‡Π°Ρ‚ΡŒ запись Π±Π΅Π· Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ
  • запись Π² Π»ΠΎΠ³ΠΈ вСдСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π΄Π΅Π±Π°Π³ Ρ€Π΅ΠΆΠΈΠΌΠ΅
  • логируСтся Ρ‚Π°ΠΊΠΆΠ΅ статус ΠΎΡ‚Π²Π΅Ρ‚Π°
  • логируСтся ΠΌΠ΅Ρ‚ΠΎΠ΄ запроса ΠΈ вызываСтся ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ(ΠΏΠΎΠΊΠ° POST ΠΈ GET)
  • ΠΏΡ€ΠΈ тСтсировании ΡΠ²Π΅Ρ€ΡΡŽΡ‚ΡΡ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ сСрвСра
  • ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ SMOKNUR_USERNAME, SMOKNUR_PASSWORD Π½Π΅ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹, авторизация происходит Ρ‡Π΅Ρ€Π΅Π· Π»ΠΎΠ³ΠΈ