Testing AJAX with Windmill in Django?

23 views
Skip to first unread message

Artem Dudarev

unread,
Feb 11, 2012, 11:08:12 AM2/11/12
to cnc-d...@googlegroups.com
Есть ли в группе кто-нибудь использующий Windmill в Django для тестирования статики (CSS, JavaScript)?

Проблема в следующем: доки пишут, что, когда тесты запускаются через `manage.py test` то DEBUG=False

https://docs.djangoproject.com/en/dev/topics/testing/#other-test-conditions

В результате статика не отдается, и клиент Windmill ее не видит. Тестировать AJAX не получается.

Как вариант - переопределять для тех тестов где нужна статика settings

https://docs.djangoproject.com/en/dev/topics/testing/#overriding-settings

вроде

@override_settings(TESTING=True)

А в settings указать

if settings.TESTING
url(r'^static(?P<path>.*)$', 'django.views.static.serve',
{
'document_root': settings.STATIC_ROOT,
}),
)

Достаточно ли это Django way или есть более правильные подходы?

Boryslav Larin

unread,
Feb 11, 2012, 11:13:12 AM2/11/12
to cnc-d...@googlegroups.com
2012/2/11 Artem Dudarev <dud...@gmail.com>:

Я это добавляю куда-нибудь пониже в корневой urls.py и, вроде, нигде
больше ничего менять не надо. Получается нормально: и не мешает, и в
ожидаемом месте, и тестировать позволяет.

>
> Достаточно ли это Django way или есть более правильные подходы?
>
>

> --
> Вы получили это сообщение, поскольку подписаны на группу Coffee'n'code
> Donetsk.
> Просмотреть это обсуждение в Сети можно по адресу
> https://groups.google.com/d/msg/cnc-donetsk/-/8J4SDJEYb5UJ.
> Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу
> cnc-d...@googlegroups.com.
> Чтобы отменить подписку на эту группу, отправьте сообщение по адресу
> cnc-donetsk...@googlegroups.com.
> О дополнительных функциях можно узнать в группе по адресу
> http://groups.google.com/group/cnc-donetsk?hl=ru.

--
Boryslav Larin
+38 063 272 21 44 | bra...@gmail.com
http://brabadu.com
Twitter: http://twitter.com/brabadu

Artem Dudarev

unread,
Feb 11, 2012, 11:14:05 AM2/11/12
to cnc-d...@googlegroups.com
Хм, с переопределением все же не получается, потому что хочется оставаться с 1.3.1 пока. Так что нужно придумать другой способ. Пока отдаю статику через
django.views.static.serve безусловно, что совсем не хорошо.

Artem Dudarev

unread,
Feb 11, 2012, 11:17:04 AM2/11/12
to cnc-d...@googlegroups.com
А как быть с продакшн-сервер. Там же лучше не отдавать статику таким образом?

Alex Litovchenko

unread,
Feb 11, 2012, 11:44:27 AM2/11/12
to cnc-d...@googlegroups.com
2012/2/11 Artem Dudarev <dud...@gmail.com>

А как быть с продакшн-сервер. Там же лучше не отдавать статику таким образом?

А на prod сервере отсутствует settings_local.py
в который на дев машине вписано DEBUG, TESTING = True, True
Зато он присутствует в .gitignore

В основном settings.py чтото вроде

try:
    from settings_local import *
except:
    pass

Ну и в urls.py примерно как у brabadu@

Вот как-то так и живем.
 

--
Вы получили это сообщение, поскольку подписаны на группу Coffee'n'code Donetsk.
Просмотреть это обсуждение в Сети можно по адресу https://groups.google.com/d/msg/cnc-donetsk/-/SaANpk1AF-4J.

Boryslav Larin

unread,
Feb 11, 2012, 12:20:35 PM2/11/12
to cnc-d...@googlegroups.com
2012/2/11 Artem Dudarev <dud...@gmail.com>:

> Хм, с переопределением все же не получается, потому что хочется оставаться с
> 1.3.1 пока. Так что нужно придумать другой способ. Пока отдаю статику через
>
> django.views.static.serve безусловно, что совсем не хорошо.
>

Так переопределять ничего не надо, можно добавить просто

If settings.DEBUG == True:
urlpatterns += patterns('',
url(.....)
)


> --
> Вы получили это сообщение, поскольку подписаны на группу Coffee'n'code
> Donetsk.
> Просмотреть это обсуждение в Сети можно по адресу

> https://groups.google.com/d/msg/cnc-donetsk/-/kChMb9ScBIcJ.


>
> Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу
> cnc-d...@googlegroups.com.
> Чтобы отменить подписку на эту группу, отправьте сообщение по адресу
> cnc-donetsk...@googlegroups.com.
> О дополнительных функциях можно узнать в группе по адресу
> http://groups.google.com/group/cnc-donetsk?hl=ru.

--

Alex Litovchenko

unread,
Feb 11, 2012, 12:49:51 PM2/11/12
to cnc-d...@googlegroups.com
2012/2/11 Boryslav Larin <bra...@gmail.com>

2012/2/11 Artem  Dudarev <dud...@gmail.com>:
> Хм, с переопределением все же не получается, потому что хочется оставаться с
> 1.3.1 пока. Так что нужно придумать другой способ. Пока отдаю статику через
>
> django.views.static.serve безусловно, что совсем не хорошо.
>

Так переопределять ничего не надо, можно добавить просто

Далеко не всегда debug/nondebug совпадает с необходимостью
раздачи/нераздачи статики
 
Reply all
Reply to author
Forward
0 new messages