Первичное тестирование программы |
||||||||||||
|
|
||||||||||||
|
Итак имеем ситуацию, когда основная часть программы написана. Теперь необходимо провести первичное
тестирование программы. Первичное тестирование проводится для: 1. Выявления и устранения ошибок в программных алгоритмах. То есть, проверяется отсутствие "зависаний" в работоспособности программы. На самом деле, данная работа, производится постоянно, при каждой компиляции программного кода. На конечном этапе, данная работа проводится с целью выявления проблем, связанных с взаимодействием различных блоков программы. 2. Проверки правильности работы вычислительных модулей программы. Если, в программе, предусмотрено вычисление каких либо величин, необходимо создать рад проверочных задач, которые Вы первично просчитываете сами, а затем прогоняете через программу. При совпадении результатов, можно считать, что вычислительные алгоритмы, написаны правильно. Первичное тестирование программы, проводится всей группой лиц, которые занимаются разработкой проекта. Порядок проведения тестирования следующий: 1. Программисты, которые разработали программный код, производят первичную инсталляцию на ПЭВМ. При этом, необходимо учитывать необходимость проверки работоспособности программы, при ее использовании в различных операционных системах. Проблема работоспособности программы в различных операционных системах, возникает, если вы используете вызов функций API операционной системы. Соответственно, требуется установка программы под несколько операционных систем. Так как большинство пользователей, работают с различными модификациями Windows. Целесообразно произвести проверку работоспособности программы для Windows 9X, Millenium, XP, NT 4.0, Windows 2000. 2. Группа лиц, занимающаяся разработкой программы, проводит тестирование. Тестирование состоит в изучении возможностей программы, устойчивости ее работы и удобности интерфейсных элементов. Программисты, которые разработали программный код, дают необходимые пояснения и комментарии по работе программы. Все возникшие замечания и предложения, вопросы и ответы - записываются. 3. Производится обсуждение (пример результатов обсуждения) наработанного материала, в части замечаний и предложений, вопросов и ответов. Цель обсуждения: выделить проблемные места программы и затем провести их устранение. Пример первичного тестирования: В программе "Миссия: Найди свою дорогу!", существует тест Кеттелла 16PF, в котором производится вычисление параметров личности. Для проверки правильности вычислений, были составлены три тестовых расчета. Первый расчет проверял правильность вычислений на лживость. Следующий тестовый расчет выдавал нулевые значения, для каждого параметра теста. Последний тестовый расчет выдавал для лживости значение в четыре стена, а для остальных параметров, максимально возможные значения. Было проведено введение тестовых заданий в тест Кеттелла 16PF, которые дали правильный результат. Соответственно, можно считать, что реализованный механизм расчетов, работает правильно. В тесте Кеттела 16PF заложен механизм отключения тестирования, при превышении отпущенного на тест времени (30 минут). Для этого используется компонент LMDClock1: TLMDClock, который обеспечивает контроль за временем. Однако, была выявлена ошибка, которая приводила к запуску звукового сигнала в не зависимости от того, правильно ли завершена работы по опросу пользователя. При открытии формы опроса, происходило присвоение времени прекращения опроса и включение свойства выдачи предупреждения. Смотри код процедуры открытия формы опроса: procedure TForm1.FormShow(Sender: TObject); Var hour, min, sec, ms:Word; begin DecodeTime(Now,hour,min,sec,ms); If min>29 then begin hour:=hour+1; min:=min-30; end Else begin min:=min+30; end; LMDClock1.Alarmtime:=Date+EnCodeTime(hour,min,sec,ms); LMDClock1.Mode:=cmAlarm; CustomerData.Table4.Locate('Имя',PasswordDlg.Edit1.Text,[loCaseInsensitive]); end; Однако, в процедуре закрытия формы, не производилось выключение выдачи предупреждения, как следствие, не зависимо от корректности завершения теста (пользователь ответил на все вопросы и уложился в 30 минут), происходила выдачи звуковой тревоги (через 30 минут после инициализации формы опроса). Для устранения данного глюка, пришлось изменить процедуру закрытия формы опроса: procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin LMDClock1.Mode:=cmNormal; end; В результате первичного обсуждения программы, был составлена следующая таблица, которая характеризует результаты первичного тестирования и принятых решений по программе. |
||||||||||||
|
||||||||||||
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
01.09.2002