Ответы пользователя по тегу Разработка через тестирование
  • Какие виды тестов из перечисленных вы бы НЕ автоматизировали на уровне проверки API?

    Maksclub
    @Maksclub
    maksfedorov.ru
    1. Пограничные проверки на кол-во умещаемых символов в переменной
    кейс излишний для автоматизации
    Он не критичен, чтобы писать целые пайплайны, проверяется один раз руками и все

    5. Проверки с отсутствием обязательным параметров запроса
    Это тесты на уровне приложения

    я правда разраб, а не тестер, у вас там целые парадигмы свои есть — надо от них плясать, они довольно интересно исключают/добавляют потребность в тех или иных проверках
    Ответ написан
    Комментировать
  • Практическое руководство к написанию тестов?

    Maksclub
    @Maksclub Куратор тега PHP
    maksfedorov.ru
    Так как проект боевой, то придется делать не так как в учебниках:
    - Сначала нужно будет писать приемочные/функциональные тесты (тк юнит-тесты скорее всего будут ни к месту, да и покрывать все кейсы будет долго) на критичные места и те, на которые дотянетесь
    - Новые фичи должны максимально возможно покрыты юнитами, и по пути старые кейсы, которых затрагивают изменения. Там где не возможны юниты -- делайте функциональные
    - Старайтесь делать тесты на места, которые меняются
    - Помогайте тестам: пишите код с declare(strict_types=1), чтобы сам код отчасти себя тестировал и был уверен в аргументах, пишите код проще и надежнее

    Чисто практические аспекты -- ну тут нюансов много, целые учебники

    Отдельно:
    - Возьмите Codeception к примеру как тестовый фулл-стек фреймворк
    - Учитесь, у меня например :) (в личку)
    Ответ написан
    Комментировать
  • Какие книги почитать по TDD?

    Maksclub
    @Maksclub
    maksfedorov.ru
    Кент Бек: TDD
    Он один из создателей JUnit, и он придумал TDD
    В книге примеры на Java и Python
    Ответ написан
    1 комментарий
  • Что такое TDD и для чего применяется?

    Maksclub
    @Maksclub
    maksfedorov.ru
    TDD это когда сначала пишешь тест а уже потом код, а не наоборот?

    Как бы да, но скорее не просто сам тест пишешь, а пишешь клиентский код (ведь тест для чего пишешь? для кода который скоро будет), то есть ты как бы уже проектируешь на этом этапе свою программу -- что и как будет работать, а тесты показывает как этот код должен вести себя при разных ситуациях

    далее реализуешь уже запроектированный код
    Ответ написан
    Комментировать
  • Как правильно заполнять БД при тестировании API?

    Maksclub
    @Maksclub
    maksfedorov.ru
    Какого уровня тесты?
    • если интеграционный тест -- посмотреть в БД запись, на этом уровне тестирования вы работаете с разными участками системы и их взаимодействие (БД как раз является частью системы)
    • если приемочный -- посмотреть ответ по  GET, тк на этом уровне уже все должно работать как черный ящик, вы просто работаете с системой и смотрите результат ее работы (как человек, как браузер и т.д..)


    3 пункт конечно не делать!
    Ответ написан
    3 комментария
  • Как вы пишите тесты для rest api?

    Maksclub
    @Maksclub Куратор тега PHP
    maksfedorov.ru
    Нормальный объем инфы по тестам https://www.youtube.com/watch?v=gRmEpUYaS20&index=...

    относится конечно Yii2, но Дмитрию свойственно раскрывать очень общий функционал, что куда и как, в чем минусы и плюсы подходов...
    Ответ написан
    Комментировать