Тестирование софта - статьи


Примеры - часть 2


scenario boolean delete() { //итерация вершин дерева iterate(int i=0; i<objectUnderTest.modelTree.size(); i++; ) { Node node = objectUnderTest.modelTree.getNodeByIndex(i); //вызов спецификационного метода delete objectUnderTest.delete(node); } return true; } scenario boolean delete_aux() { for(int i=0; i<objectUnderTest.modelTree.size(); i++; ) { Node node = objectUnderTest.modelTree.getNodeByIndex(i); if(objectUnderTest.modelTree.isLeaf(node)) { objectUnderTest.delete(node); break; } } return true; }

Для покрытия тестовых ситуаций, при которых не существуют родитель в методе add и удаляемая вершина в методе delete, вводятся дополнительные сценарные методы. scenario boolean add_neg() { if(objectUnderTest.modelTree.size()<maxSize) { //итерация родителей - произвольных вершин iterate(int i=0; i<10; i++; ) { //итерация добавляемых вершин iterate(int j=0; j<10; j++) { Node parent = new Node(i); Node r node = new Node(j); //вызов спецификационного метода add objectUnderTest.add(parent, node); } } } return true; } scenario boolean delete_neg() { //итерация произвольных вершин iterate(int i=0; i<10; i++; ) { Node node = new Node (i); //вызов спецификационного метода delete objectUnderTest.delete(node); } return true; }


Начало  Назад  Вперед



Книжный магазин