Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Тестирование и отладка программ




Процесс исправления ошибок называется отладкой.

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

Отладка программ и обработка ошибок — это не одно и то же, но они тесно связаны друг с другом.

Отладка программ — это проверка и внесение исправлений в программу при ее разработке. Отладка позволяет идентифицировать ошибки, допущенные при программировании. Например, синтаксические ошибки в тексте программы, именах функций и переменных или логические ошибки.

Обработка ошибок — это задание реакции на ошибки, которые возникают во время выполнения программы. Причиной ошибок могут быть как ошибки в самой программе, так и другие обстоятельства, находящиеся вне сферы влияния программиста. Например, отсутствие файлов, к которым происходит программное обращение, отказ аппаратных средств или неправильные действия пользователя.

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

Среда разработки программ на VBA предоставляет пользователю современные удобные средства отладки программы.

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

Тестирование — это процесс выполнения процедуры и исследование всех аспектов ее работы.

Цель тестирования — проверить правильность результатов выполнения процедуры и ее реакцию на разнообразные действия пользователя.

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

Все возможные ошибки можно разделить на три вида:

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

2. Ошибки выполнения. Возникают при выполнении программы, т.е. после успешной компиляции. Причиной таких ошибок может быть отсутствие данных или неправильная информация (например, данные, введенные пользователем). Ошибки выполнения, как и ошибки компиляции, легко идентифицируются VBA. При этом выводится инструкция, при выполнении которой произошла ошибка. Ошибки данного типа тяжелее устранить: может понадобиться вывести значения переменных или свойств, а также другие данные, которые влияют на успешное выполнение программы.

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

Компиляция — это процесс преобразования программы, написанной на алгоритмическом языке, в язык машинных кодов. Если в программе есть синтаксические ошибки, то процесс компиляции прекращается, строки с ошибкой закрашиваются желтым цветом и выдается соответствующее сообщение. Для продолжения выполнения программы необходимо исправить ошибку и нажать кнопку “Continue” на стандартной панели редактора VBA. Или прервать выполнение программы, нажав на кнопку “Reset” , исправить ошибку в программе, а затем заново запустить ее.

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

Рис. 3. Редактор Visual Basic немедленно реагирует на синтаксические ошибки

Чтобы исследовать процесс отладки на практике, нам необходима какая-нибудь программа, содержащая ошибку. В Практической работе № 4–2 “Отладка программ” рассматривается устранение ошибки при написании процедуры для объекта Image.

Практическая работа № 4–2 “Отладка программ”

1. Откройте новую рабочую книгу.

2. Подготовьте экранную форму, представленную на рис. 4. Внедрите в созданную форму с помощью панели Toolbox объект Image . Рисунок лучше внедрить небольшой.

ВНИМАНИЕ!!! Правильно описывайте путь к графическим файлам, которые внедряются программно в форму.

Рис. 4. Форма для выполнения задания

3. Создайте новую процедуру для кнопки “Измени надпись”.

4. Введите текст процедуры. В тексте намеренно сделаем ошибку в свойстве Size (напишем Sie):

Private Sub CommandButton1_Click()
Label1.Caption = "Флаг России"
UserForm2.Image1.Picture = LoadPicture("C:\FlgRUS.gif") à Введите свой путь!
Label1.Font.Sie = 14
End Sub

5. Вернемся в редакторе к созданной форме и выведем форму для работы, нажав клавишу .

6. После появления формы на экране нажмем на кнопку “Измени надпись”. Так как в программе заложена ошибка, появится окно сообщения об ошибке (рис. 5) и мы попадем в редактор VBA.

Рис. 5. Окно редактирования кода с окном сообщения об ошибке

7. Нажмите на кнопку “Debug” (отладка), и отладчик укажет, в какой строке у вас ошибка (рис. 6).

Рис. 6. Окно редактирования кода с указанной ошибкой

8. Исправьте ошибку и нажмите на стандартной панели инструментов на кнопку (“Продолжение”).

Тексты программ для кнопок CommandButton2, CommandButton3, CommandButton4, CommandButton5 представлены в таблице:

Объект Программа
CommandButton2 (сдвинь рисунок вправо) Private Sub CommandButton2_Click() Image1.PictureAlignment = 4 End Sub
CommandButton4 (измени цвет фона и формы) Private Sub CommandButton4_Click() Image1.BackColor = &HFF80FF UserForm2.BackColor = RGB(64, 0, 0) End Sub
CommandButton3 (мозаика) Private Sub CommandButton3_Click() Image1.PictureTiling = True End Sub
CommandButton5 (измени рисунок флага и надпись) Private Sub CommandButton5_Click() Label1.Caption = "Флаг Англии" Label1.Font.Size = 14 Label1.Font.Name = "Arial Black" UserForm2.Image1.Picture = LoadPicture("C:\FlgEng.gif") Изменить! End Sub

9. После щелчка по кнопке “Измени надпись” форма приобретет вид, представленный на рис. 7.

Рис. 7. Работа кнопки “Измени надпись”

10. После щелчка по кнопке “Сдвинь рисунок вправо” форма приобретет вид, представленный на рис. 8.

Рис. 8. Работа кнопки “Сдвинь рисунок вправо”

11. После щелчка по кнопке “Мозаика” форма приобретет вид, представленный на рис. 9.

Рис. 9. Работа кнопки “Мозаика”

12. После щелчка по кнопке “Смена флага и надписи” форма приобретет вид, представленный на рис. 10.

Рис. 10. Работа кнопки “Смена флага и надписи”


Поделиться:

Дата добавления: 2015-08-05; просмотров: 426; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.006 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты