Size: a a a

testing_in_python

2020 June 16

VS

Vladimir Shishmarev in testing_in_python
спасибо
источник

E

Egor in testing_in_python
Есть какие-то стоящие книги по автотестам? В целом интересуют общие вопросы: как надо делать, как не надо делать и т.д. ибо пишу тесты и начинаю подозревать, что делаю дичь
источник

M

Merg in testing_in_python
Egor
Есть какие-то стоящие книги по автотестам? В целом интересуют общие вопросы: как надо делать, как не надо делать и т.д. ибо пишу тесты и начинаю подозревать, что делаю дичь
источник

E

Egor in testing_in_python
Спасибо, это читал,  но оно больше как инструкция к pytest, а мне больше нужно наверное проектирование текстов и что-то в этом духе
источник

M

Merg in testing_in_python
источник

E

Egor in testing_in_python
Спасибо,  посмотрю!
источник

EB

Evgenii B in testing_in_python
тесты одни из простейших по структуре кодовых баз, что бы ты не тестировал
источник

EB

Evgenii B in testing_in_python
фреймворки для тестирования сложны, но сам код тестов сложно же сделать откровенно плохим. даже интересно как люди для себя обьясняют желание учить что-то по коду тестов вместо в целом чтения по дизайну кода. код тестов это подмножество любого кода, только еще более тривиальное
источник

E

Egor in testing_in_python
Evgenii B
фреймворки для тестирования сложны, но сам код тестов сложно же сделать откровенно плохим. даже интересно как люди для себя обьясняют желание учить что-то по коду тестов вместо в целом чтения по дизайну кода. код тестов это подмножество любого кода, только еще более тривиальное
я не совсем об этом, речь не о коде тестов,  а о том "как" тестировать. Типа в ручном тестировании понятно, все кейсы не покрыть, с помощью техник тест дизайна отбираются самые критичные и т.д. С автотестами мы поидее должны покрывать гораздо больше, но мне интересно в какие моменты нужно тормознуть, чтобы не скатиться в излишнее тестирование. Т.е. у меня например сейчас ситуация - есть api метод который строит достаточно сложное дерево из различных значений подтаблиц. Таблиц с которыми это нужно проверить достаточно много, в итоге чтобы построить своё дерево (с которым будет проводиться сравнение) я перенес в код проекта с тестами кучу логики из самого тестируемого приложения и продолжаю допиливать, соответственно ушло много времени. Так вот я думаю, может я уже переборщил и стоило  не строить это дерево динамически, а тупо вынести в файл несколько ожидаемых результатов? Покрытие будет гораздо меньше, но поддержка такого кода будет несравнимо легче и времени на написание гораздо меньше. Я просто автоматизацией занимаюсь совсем недавно, поэтому опыта еще мало, вот хочу лучше понимать такие моменты
источник

АК

Александр Кот... in testing_in_python
Egor
я не совсем об этом, речь не о коде тестов,  а о том "как" тестировать. Типа в ручном тестировании понятно, все кейсы не покрыть, с помощью техник тест дизайна отбираются самые критичные и т.д. С автотестами мы поидее должны покрывать гораздо больше, но мне интересно в какие моменты нужно тормознуть, чтобы не скатиться в излишнее тестирование. Т.е. у меня например сейчас ситуация - есть api метод который строит достаточно сложное дерево из различных значений подтаблиц. Таблиц с которыми это нужно проверить достаточно много, в итоге чтобы построить своё дерево (с которым будет проводиться сравнение) я перенес в код проекта с тестами кучу логики из самого тестируемого приложения и продолжаю допиливать, соответственно ушло много времени. Так вот я думаю, может я уже переборщил и стоило  не строить это дерево динамически, а тупо вынести в файл несколько ожидаемых результатов? Покрытие будет гораздо меньше, но поддержка такого кода будет несравнимо легче и времени на написание гораздо меньше. Я просто автоматизацией занимаюсь совсем недавно, поэтому опыта еще мало, вот хочу лучше понимать такие моменты
Да те же самые техники тест-дизайна. Единственный плюс - можно написать один тест и параметризовать его в усмерть, насколько хватит фантазии. По поводу вашего дерева не понял только. А логику тестируемого приложения и надо тестировать, что же еще делать тестировщику 🙂
источник

VD

Vadim Dudin in testing_in_python
Evgenii B
фреймворки для тестирования сложны, но сам код тестов сложно же сделать откровенно плохим. даже интересно как люди для себя обьясняют желание учить что-то по коду тестов вместо в целом чтения по дизайну кода. код тестов это подмножество любого кода, только еще более тривиальное
Раз уж тут зашла об этом речь, посоветуешь хороших книг на эту тему?
источник

EB

Evgenii B in testing_in_python
c автотестами ты абсолютно также используя техники тест дизайна (классы эквивалентности, boundaries check) приходишь к тестовым данным.

дата провайдеры как входной тест даты так и ожидаемого результата могут быть плоскими и простыми (ты захардкодил данные: строку, json, etc) и посложнее: ты можешь сходить в базу / другое API / етс чтобы получить ожидаемый обьект.

написание сложных датапровайдеров никак особо не отличается от написания любого продакшен кода, тестирование как область не налагает на интерфейсы / реализации классов ничего дополнительно
источник

EB

Evgenii B in testing_in_python
Vadim Dudin
Раз уж тут зашла об этом речь, посоветуешь хороших книг на эту тему?
советую читать документацию по тестовым фреймворкам, и каждый раз когда поулчается что-то костыльное, смотреть в сторону абстракции, которая костыль будет помещать в хорошо описанный конкретный кусок кода таким образом, чтобы тест кейс без него выглядел максимально аутентично
источник

VD

Vadim Dudin in testing_in_python
Evgenii B
советую читать документацию по тестовым фреймворкам, и каждый раз когда поулчается что-то костыльное, смотреть в сторону абстракции, которая костыль будет помещать в хорошо описанный конкретный кусок кода таким образом, чтобы тест кейс без него выглядел максимально аутентично
Да не, я про дизайн кода в целом
источник

EB

Evgenii B in testing_in_python
по коду есть много докладов от raymond hettinger, Sandi Metz
источник

EB

Evgenii B in testing_in_python
code complete
источник

EB

Evgenii B in testing_in_python
fluent python
источник

VD

Vadim Dudin in testing_in_python
Спасибоу, посмотрим
источник

EB

Evgenii B in testing_in_python
источник

EB

Evgenii B in testing_in_python
в общем вот такие книги на усмотрение от McConnel
источник