?

Log in

No account? Create an account
На нашей фабричке

на нашей фабричке...


Previous Entry Share Flag Next Entry
На нашей фабричке

Тестировщики и программисты

Когда-то я удивлялся, зачем вообще нужны эти тестировщики.

Потом немного разобрался и долго считал тестировщиков такими недопрограммистами - делают рутинную работу пока программисты творят. Вот подрастут, подучатся - пойдут на повышение и тоже станут программистами.

В последнее время убеждаюсь, что тестировщик намного важнее и ценнее программиста. От него, в конечном итоге, зависит интерпретация техзадания, точность и полнота его исполнения. И вообще, программы скоро будет писать искусственный интеллект, а хорошего тестировщика роботом никак не заменить.




  • 1
dom3d June 20th, 8:18
Наоборот, тестировщика легко заменит ИИ.
Тестировщик ничего не создает.
ИИ никогда не заменит программиста.

зы
Да, Тестировщики очень важны.

pisar4uk June 20th, 8:26
Зависит от подхода. Иногда тест - это суть ТЗ, который пишет понимающий чел. А прогеры числом поболее ценю подешевле просто долбятся, пока все тесты не начнут проходить, и никто даже не проверяет, что у них там внути.

Irnis Haliullin June 20th, 21:22
да. По идее человек, который пишет ТЗ и создает продукт, а программисты и тестировщики только реализуют то, что он задумал. Но это в идеальном мире :)

Edited at 2019-06-20 09:23 pm (UTC)

aka_mik June 20th, 8:24
Пока ТЗ не будет ставить ИИ, а значит пока рулить бизнесом не будет ИИ - программы ИИ не будет писать

mammoth_spb June 20th, 8:35
Что-то из крайности в крайность кидает. Я видел кучу успешных продуктов, написанных без участия отдельных тестировщиков. А вот чтобы тестировщики без программистов продукт выдали - ни разу. Всё равно что говорить, мол, технологи не важны, самые важные это ОТК.

Хороший тестировщик легко заменяет аналитика, это да. И "особое мнение" тоже важно иметь. Но кажется мне, у вас он выполняет функцию product owner просто, а не просто тестирование. Это уже другое.

А, ну да. Разговоры "скоро программисты будут не нужны" я всю карьеру слышу, все 25 лет. Регулярно всплывают новые инструменты, некоторые стартуют как ракета и освещают небосвод (Delphi, мы будем тебя помнить), а поголовье программистов только увеличивается. Потому как программ требуется все больше, а переводчик из сумбурных ТЗ в код даже на горизонте не виден.



Edited at 2019-06-20 08:35 am (UTC)

mugunin June 21st, 5:57
Отдельные тестировщики -- это вчерашний день прошлый век. Если нужен надежный и модифицируемый код, то одни и те же люди пишут/проектируют тесты в первую очередь, а код -- это уже следствие.

vmenshov June 20th, 8:50
Согласен.

ankem June 20th, 9:45
С точки зрения бизнеса безусловно важнее. Но это как сказать в автомобиле шины важнее дисков. Ну да, наверное важнее, хотя без шин гипотетически на одних дисках поехать можно, а без дисков шина вообще не нужна.

Но и назвать это законченным продуктом нельзя.

Без программиста не будет функционала. Чтобы программист не тупел его постоянно нужно загружать новой работой, если заставить программиста тестировать свой код непрерывно, то результата вообще не будет. Он остановится на одной задаче и будет её доводить до безумного идеала своей мечты, но это будет не идеал мечты заказчика.

ochkovchikov June 20th, 12:20
Ну так программисты тоже тесты пишут. А то что крупному бизнесу нужны тестировщики не отменяет ущербности самой работы тестировщика.

lizardian June 20th, 14:04
Может, мы о разном, но чтобы быть тестировщиком, не обязательно быть программистом.
Я давненько читал статью про shareware, что авторы раздают регистрации за поиск багов, и там упоминался, кажется, военный, который находил невероятные ошибки, которых не обнаруживал больше никто.

avoitovich June 20th, 15:56
Программисты, конечно же, обязаны сами тестировать свой код. Но на практике есть большая разница между подходами: программисты чаще всего проверяют только позитивные сценарии, а тестировщики проверяют все сценарии, включая негативные. Кроме того, существуют смоук-тесты, регресивные тесты, полные тесты, на которые дешевле поставить тестировщика.

alexartukov June 20th, 15:59
Проблема скорее в другой плоскости.

Хорошего тестировщика найти и подержать в руках сложнее, чем хорошего разработчика ПО.

Потому что хорошие разработчики долго живут и растут в своей профессии, а хорошие тестировщики в профессии не задерживаются.

mugunin June 21st, 6:13
TDD вам в помощь )
Почитал коменты и слегка ужаснулся восприятию процесса разработки софта. Уровень 20-30 летней давности -- сначала написать код, потом тесты и носиться с этими тестами до "полного покрытия", или применять всякие модные словечки, чтобы оправдать бюджет.

"По секрету" скажу, что для того, чтобы написать надежный и легко-модифицированный софт -- нужно сначала писать тесты, а потом уже код.

При этом делать это должен один и тот же человек, обычно называемый программистом, но он скорее сплав "микро-архитектор/логик/дизайнер/тестировщик/кодер", если писать в порядке приоритетов. То есть должен и проект представлять в совокупности и его ограничения, и спроектировать правильно и красиво, и предусмотреть все возможные и невозможные "что-то-пошло-не-так" пути. А сам код уже -- следствие.

Как результат -- чистый, простой и, главное, надежный код, делающий ровно то что нужно на самом деле. И прекрасно поддерживаемый в случае необходимости изменений и добавок.

Если же писать код, а потом его тестировать -- неизбежно возникает код с костылями, чтобы тесты проходили, и в реальности это как слоны на тоненьких ногах у Дали -- картинка красивая, но в реальности чуть-что -- все порушится. Яркий пример из практики конца прошлого века -- разработка GPS (а там в основном тестов даже после написания кодов не было) -- поставили самолет на автопилот по GPS-у, и все было более-менее, пока не перелетели из северного полушария в южное. Тут то автопилот и перевернул самолет кверху пузом :)

Edited at 2019-06-21 06:16 am (UTC)

zorins June 21st, 9:00
Для тестов интеграции без тестировщика не обойтись. Да и софт в связке с железом и каким-нибудь внешним протоколом программист не протестит нормально. Нужен специалист.

mugunin June 21st, 9:25
Для какой-то внешней части, API, протоколу или железу конечно нужен спец, или док.
Я о том, что отдельный от кода спец для тестов уже давно не нужен, один и тот же человек, лучше команда, и тесты пишет (в т.ч. интеграционные), и код.

  • 1