Size: a a a

Django [ru] #STAY HOME

2019 July 28

AS

Andrei S. in Django [ru] #STAY HOME
Rust Saiargaliev
А для чего нужно писать тесты на Python ты знаешь? :)
Нет. Я только начинаю изучать tdd
источник

А

Алексей in Django [ru] #STAY HOME
Andrei S.
Нет. Я только начинаю изучать tdd
Насколько я понимаю, в идеале тесты на питоне - это тесты rest api, а в реакте-отображения всего
источник

AS

Andrei S. in Django [ru] #STAY HOME
Алексей
Эти react тесты-это, например, появилась ли кнопочка, правильный ли заголовок страницы и т.д.
Thx
источник

RS

Rust Saiargaliev in Django [ru] #STAY HOME
Andrei S.
Нет. Я только начинаю изучать tdd
Тесты покрывают написанную тобой логику, удостоверяя что она верная, а так же позволяют предотвратить ошибки при обновлении и изменении написанного кода. Это сильно облегчает работу если ты пишешь код не один или работаешь со старым кодом, о котором ты не всё знаешь. Плюс написание тестов заставляет тебя писать основной код чище, ибо так легче писать тесты.
источник

RS

Rust Saiargaliev in Django [ru] #STAY HOME
Теперь стоит подумать, а какая разница то между Python и Javascript кодом в этом случае? Да никакой, тесты и там и там делают одно и тоже
источник

AS

Andrei S. in Django [ru] #STAY HOME
Rust Saiargaliev
Теперь стоит подумать, а какая разница то между Python и Javascript кодом в этом случае? Да никакой, тесты и там и там делают одно и тоже
Спасибо большое.
источник

А

Алексей in Django [ru] #STAY HOME
Rust Saiargaliev
Тесты покрывают написанную тобой логику, удостоверяя что она верная, а так же позволяют предотвратить ошибки при обновлении и изменении написанного кода. Это сильно облегчает работу если ты пишешь код не один или работаешь со старым кодом, о котором ты не всё знаешь. Плюс написание тестов заставляет тебя писать основной код чище, ибо так легче писать тесты.
Мне ещё пока-что сложно привыкнуть к методике "написал функцию-и сразу тест к ней")))
источник

А

Алексей in Django [ru] #STAY HOME
Rust Saiargaliev
Тесты покрывают написанную тобой логику, удостоверяя что она верная, а так же позволяют предотвратить ошибки при обновлении и изменении написанного кода. Это сильно облегчает работу если ты пишешь код не один или работаешь со старым кодом, о котором ты не всё знаешь. Плюс написание тестов заставляет тебя писать основной код чище, ибо так легче писать тесты.
Что можно тестить в django вьюшках? Статус коды?
источник

А

Алексей in Django [ru] #STAY HOME
Алексей
Что можно тестить в django вьюшках? Статус коды?
коды, права, что отдают
источник

А

Алексей in Django [ru] #STAY HOME
Алексей
коды, права, что отдают
Но а если они шаблоны отдают(return render(..)), тогда что?
источник

RS

Rust Saiargaliev in Django [ru] #STAY HOME
Алексей
Что можно тестить в django вьюшках? Статус коды?
Если это дефолтный listview или detailview абсолютно без логики - тестить, в целом нечего, они покрыты тестами сами по себе в джанге.
Но как только ты что-то кастомизируешь - добавляешь права, меняешь контекст, кверисет, даешь какую-то логику - это уже нужно тестировать
источник

А

Алексей in Django [ru] #STAY HOME
Алексей
Но а если они шаблоны отдают(return render(..)), тогда что?
Просто большинство вьюшек у меня это просто render'ить шаблон, плюс немного кастомного контекста, данные сейчас через drf api с кода js забираю
источник

А

Алексей in Django [ru] #STAY HOME
я каждый эндпоинт еще проверяю на методы, а то вдруг какой нехороший человек заменит там что, т.е. каждый эндпоинт проверяется на GET, POST, PUT, PATCH, DELETE
источник

А

Алексей in Django [ru] #STAY HOME
Алексей
я каждый эндпоинт еще проверяю на методы, а то вдруг какой нехороший человек заменит там что, т.е. каждый эндпоинт проверяется на GET, POST, PUT, PATCH, DELETE
И это все через стандартный test Client в джанго, так?
источник

RS

Rust Saiargaliev in Django [ru] #STAY HOME
Алексей
я каждый эндпоинт еще проверяю на методы, а то вдруг какой нехороший человек заменит там что, т.е. каждый эндпоинт проверяется на GET, POST, PUT, PATCH, DELETE
Добавь миксин, который разбирается с доступными методами и правами на них, наследуй каждый эндпоинт от этого миксина. После чего тебе нужно будет написать тесты для этого миксина. Эндпоинты сможешь оставить в покое - в них нужно будет только удостовериться, что они используют этот миксин
источник

А

Алексей in Django [ru] #STAY HOME
Алексей
И это все через стандартный test Client в джанго, так?
я вот это использовать люблю еще
https://model-mommy.readthedocs.io/en/latest/
источник

А

Алексей in Django [ru] #STAY HOME
Rust Saiargaliev
Добавь миксин, который разбирается с доступными методами и правами на них, наследуй каждый эндпоинт от этого миксина. После чего тебе нужно будет написать тесты для этого миксина. Эндпоинты сможешь оставить в покое - в них нужно будет только удостовериться, что они используют этот миксин
спасибо, обмозгую потом, как это лучше
источник

А

Алексей in Django [ru] #STAY HOME
Алексей
я вот это использовать люблю еще
https://model-mommy.readthedocs.io/en/latest/
О, круто, спасибо! Спасает время)
источник

OD

O'ktamjon Dilbarjonov in Django [ru] #STAY HOME
Можете помогать?
источник

RS

Rust Saiargaliev in Django [ru] #STAY HOME
O'ktamjon Dilbarjonov
Можете помогать?
Смотри, там есть кнопка Switch to copy and paste view.
Нажимаешь ее, заходишь на dpaste.de и пастишь туда, а сюда ссылку. Такие скриншоты толку мало кидать
источник