Тестирование



В процесс приемки постпроцессоров (программ) для станков с числовым программным управлением (ЧПУ), разработанных для завода, на котором я в те годы работал, неким НИИ, я решил внести маленькое возмущение. Программы передавались каждая со своим тестом в отдельной коробочке, программы были надписаны, а тесты - нет. Я взял и неловко рассыпал коробочки. В результате программы стали запускаться не со своими, а с чужими, случайно выбранными тестами.

Результаты были ошеломляющими - и для сдающей, и для принимающей стороны. Лишь две из семи программ (как потом выяснилось, они были написаны опытными пожилыми разработчиками) отработали нормально - выдали сообщение, что «это лента для другого типа станка, вставьте новую ленту» и завершили работу. Прочие 5 программ чего только не вытворяли - начинали что-то хаотично сверлить на дорогой плате, зависали, выдавали какие-то безумные сообщения типа «идет деление на ноль».

Вывод простой: программы были тепличными растениями, гибнущими при первом же заморозке. Это была система, неустойчивая к возмущениям, обладающая малым количеством степеней защиты. Можно ли говорить, что я создал кризисную ситуацию? Конечно, нет. Моя злая шутка лишь оттестировала ситуацию, но вовсе не создала ее.