Програма за провеждане на държавен изпит за придобиване на втора степен на професионална квалификация за специалност



Pdf просмотр
страница18/38
Дата27.09.2022
Размер2.08 Mb.
#115149
ТипПрограма
1   ...   14   15   16   17   18   19   20   21   ...   38
Изпитни теми
Пример
: По време на теоретичния изпит се предоставя непълен/неработещ/некоректен програмен фрагмент. Предоставеният фрагмент да се приведе в работещ вид.
Условие
:
Разполагате с класове Dummy и Axe. Напишете компонентни тестове, които да проверят работата на класовете и да помогнат в откриването и отстраняването на евентуални проблеми.
За класът
Axe създайте следните тестове:
● Тествайте дали оръжието губи здравина след всяка атака
● Тествайте атака със счупено оръжие
За класът
Dummy създайте следните тестове:
Чучелото губи здраве, ако е атакувано
● Мъртво чучело хвърля изключение, ако е атакувано
● Мъртвото чучело може да даде XP
● Живото чучело не може да даде XP
Фрагмент:
Axe.cs public class Axe
{ private int attackPoints; private int durabilityPoints; public Axe(int attack, int durability)
{ this.attackPoints = attack; this.durabilityPoints = durability;
} public int AttackPoints
{ get { return this.attackPoints; }
} public int DurabilityPoints
{ get { return this.durabilityPoints; }
}

public void Attack(Dummy target)
{ if (this.durabilityPoints <= 0)
{ throw new InvalidOperationException("Axe is broken.");
} target.TakeAttack(this.attackPoints); this.durabilityPoints -= 1;
}
}
Dummy.cs public class Dummy
{ private int health; private int experience; public Dummy(int health, int experience)
{ this.health = health; this.experience = experience;
} public int Health
{ get { return this.health; }
} public void TakeAttack(int attackPoints)
{ if (this.IsDead())
{ throw new InvalidOperationException("Dummy is dead.");
} this.health -= attackPoints;
} public int GiveExperience()
{ if (!this.IsDead())
{ throw new InvalidOperationException("Target is not dead.");
} return this.experience;
} public bool IsDead()
{ return this.health <= 0;


}
}



Сподели с приятели:
1   ...   14   15   16   17   18   19   20   21   ...   38




©obuch.info 2024
отнасят до администрацията

    Начална страница