Для тестирования сотрудничества классов могут использоваться различные способы [43]:
q стохастическое тестирование;
q тестирование разбиений;
q тестирование на основе сценариев;
q тестирование на основе состояний.
В качестве примера рассмотрим программную модель банковской системы, в состав которой входят классы Банк, Банкомат, ИнтерфейсБанкомата, Счет, Работа с наличными, ПодтверждениеПравильности, имеющие следующие операции:
Банк: | ||
ПроверитьСчет(); | ЗапросДепозита (); | РазрешитьКарту(); |
ПроверитьРIN(); | ИнфоСчета(); | СнятьРазрешен(); |
ПроверитьПолис(); | ОткрытьСчет(); | ЗакрытьСчет(). |
ЗапросСнятия(); | НачальнДепозит(); | |
Банкомат: | ||
КартаВставлена(); | Положить(); | СостояниеСчета(); |
Пароль(); | Снять(); | Завершить(). |
ИнтерфейсБанкомата: | ||
ПроверитьСостояние(); | ВыдатьНаличные(); | ЧитатьИнфоКарты(); |
СостояниеПоложить(); | ПечатьСостСчета(); | ПолучитьКолвоНалич(). |
Счет: | ||
ОграничКредит(); | Остаток)); | Положить(); |
ТипСчета(); | Снять(); | Закрыть(). |
ПодтверждениеПравильности: | ||
ПодтвРIN(); | ПодтвСчет(). |
Диаграмма сотрудничества объектов банковской системы представлена на рис. 16.1. На этой диаграмме отображены связи между объектами, стрелки передачи сообщений подписаны именами вызываемых операций.
|
|
Рис. 16.1. Диаграмма сотрудничества банковской системы