Методы тестирования программного обеспечения. Степанченко И.В. - 34 стр.

UptoLike

Составители: 

36
Есть ли переменные со сходными именами (например, user и us-
ers)? Наличие сходных имен не обязательно является ошибкой, но
служит признаком того, что имена могут быть перепутаны где-
нибудь внутри программы.
5. Корректно ли произведено описание класса?
Правильно ли происходит описание атрибутов и методов клас-
са? Имеются ли методы или атрибуты, которые
по смыслу не подхо-
дят к данному классу? Не является ли класс громоздким? Наличие
положительных ответов на эти вопросы указывает на возможные
ошибки в анализе и проектировании системы.
2.4.3. Ошибки вычислений
Сводный список вопросов таков:
1. Производятся ли вычисления с использованием данных разного типа?
Существуют ли вычисления, использующие данные разного ти
-
па? Например, сложение переменной с плавающей точкой и целой
переменной. Такие случаи не обязательно являются ошибочными, но
они должны быть тщательно проверены для обеспечения гарантии
того, что правила преобразования, принятые в языке, понятны. Это
важно как для языков с сильной типизацией (например, Ada, Java),
так и для языков со слабой типизацией (например,
С++, хотя он тяго-
теет к сильной типизации). Например, для языка Java код
byte a, b, c;
c = a + b;
может вызвать ошибку, так как операция «сложение» преобразует
данные к типу int, и результат может превысить максимально возмож-
ное значение для типа byte. Таким образом, важным для вычислений с
использованием различных типов данных является явное или неявное
преобразование типов.
Ошибки, связанные с использованием данных
разных типов являются одними из самых распространенных.
2. Производятся ли вычисления неарифметических переменных?
3. Возможно ли переполнение или потеря промежуточного результата
при вычислении?
Это означает, что конечный результат может казаться правиль-
ным, но промежуточный результат может быть слишком большим или
слишком малым для машинного представления данных
. Ошибки могут
возникнуть даже если существует преобразование типов данных.
4. Есть ли деление на ноль?
Классическая ошибка. Требует проверки всех делителей на не-
равенство нулю. Следствием данной ошибки является либо сообще-
ние «деление на ноль», либо «переполнение», если делитель очень
          Есть ли переменные со сходными именами (например, user и us-
     ers)? Наличие сходных имен не обязательно является ошибкой, но
     служит признаком того, что имена могут быть перепутаны где-
     нибудь внутри программы.
5.   Корректно ли произведено описание класса?
          Правильно ли происходит описание атрибутов и методов клас-
     са? Имеются ли методы или атрибуты, которые по смыслу не подхо-
     дят к данному классу? Не является ли класс громоздким? Наличие
     положительных ответов на эти вопросы указывает на возможные
     ошибки в анализе и проектировании системы.
                         2.4.3. Ошибки вычислений
     Сводный список вопросов таков:
1.   Производятся ли вычисления с использованием данных разного типа?
         Существуют ли вычисления, использующие данные разного ти-
     па? Например, сложение переменной с плавающей точкой и целой
     переменной. Такие случаи не обязательно являются ошибочными, но
     они должны быть тщательно проверены для обеспечения гарантии
     того, что правила преобразования, принятые в языке, понятны. Это
     важно как для языков с сильной типизацией (например, Ada, Java),
     так и для языков со слабой типизацией (например, С++, хотя он тяго-
     теет к сильной типизации). Например, для языка Java код
                                byte a, b, c;
                                       …
                                  c = a + b;
     может вызвать ошибку, так как операция «сложение» преобразует
     данные к типу int, и результат может превысить максимально возмож-
     ное значение для типа byte. Таким образом, важным для вычислений с
     использованием различных типов данных является явное или неявное
     преобразование типов. Ошибки, связанные с использованием данных
     разных типов являются одними из самых распространенных.
2.   Производятся ли вычисления неарифметических переменных?
3.   Возможно ли переполнение или потеря промежуточного результата
     при вычислении?
          Это означает, что конечный результат может казаться правиль-
     ным, но промежуточный результат может быть слишком большим или
     слишком малым для машинного представления данных. Ошибки могут
     возникнуть даже если существует преобразование типов данных.
4.   Есть ли деление на ноль?
          Классическая ошибка. Требует проверки всех делителей на не-
     равенство нулю. Следствием данной ошибки является либо сообще-
     ние «деление на ноль», либо «переполнение», если делитель очень
                                   36