Я инженер по тестированию программного обеспечения, встроенный в команду разработчиков. Большая часть моей работы связана с проверкой состояния автоматизированных тестов проекта (главным образом, тестов на единицу/интеграцию).Автоматическое тестирование: способы помочь и обучить разработчиков?
Я не близорукий фанатик, который хочет заставить себя испытать все горло, но я хочу помочь каждому получить максимум от времени, когда они проводят письменные тесты. Каждую неделю проводится много тестов, поэтому важно максимизировать отдачу.
Прямо сейчас, я делаю несколько вещей, чтобы попытаться помочь. Во-первых, я всегда предлагаю говорить о проблемах, связанных с тестируемостью. Например. попытайтесь идентифицировать стратегию тестирования, можно ли проверить конкретный дизайн и так далее.
В дополнение к объяснению вещей людям и обычно попыткам помочь им, я также просматриваю готовый код и те тесты, которые они пишут (мне приходится подписываться на истории, а это значит, что я тоже несколько состязателен).
Мой текущий процесс состоит в том, чтобы садиться один, работать через их код и закладку & комментировать все проблемные области, места, которые могут быть улучшены, и причина для этого. Затем я приглашаю разработчика на свой компьютер и просматриваю все точки обзора. Затем я отправляю им приличную запись, поэтому у них есть запись об этом, и у них есть легкая ссылка.
Я не исправить их код и тесты для них, но я добавлю больше тестовых примеров и т. Д., Если я обнаруживаю пробелы. Причина, по которой я решил не исправить тесты для них, - это то, что разработчикам слишком легко сказать «спасибо», но настроить. Мое рассуждение состоит в том, что, если они должны решить проблемы, которые я определил до того, как я подпишусь, это приведет к лучшему стандарту тестирования проекта (т. Е. Более самодостаточному тестированию разработчиков).
Мой вопрос: когда дело доходит до оказания помощи команде, могу ли я сделать что-нибудь лучше? Какие подходы вы нашли, что может быть полезно?
Мне особенно хотелось услышать от людей, занимающих аналогичные должности, которые столкнулись с такими же проблемами (например, помощь в улучшении качества тестирования, демонстрация тестирования ценности может привести к соответствующим ситуациям, а также обеспечить хороший баланс между тем, чтобы быть вспомогательный и состязательный.)
* edit: Спасибо за ответы; все они содержали полезные предложения. Я считаю, что лучший из них является лучшим ответом, так как я думаю, что это сводится к поддержке разработчиков, а парное программирование - это то, что я еще не пробовал (не так много импровизированных «вот как я сделал бы это» демонстрации после того, как тесты были написано). Я дам, что пойдем с кем-нибудь, кто борется с тестированием чего-то :) Привет.
Ваш текущий процесс звучит хорошо для меня: я не вижу, как его улучшить. – ChrisW
Похожие вопросы: http://stackoverflow.com/questions/581589/introducing-unit-testing-to-a-wary-team и http: // stackoverflow.com/questions/416231/how-do-you-persuade-others-to-write-unit-tests –
Спасибо, я посмотрю на них. –