mehmetgelmedi / TankOyunu

Yazılım Sınama dersi ikinci projesi

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

TankProje

Yazılım Sınama dersi ikinci projesi

Amaç

Mayın oyunu projesinde amaç; kullanıcının girdiği değerler ile oluşturulan alanda yine kullanıcı tarafından yapılan mayın ekleme çıkarma işlemleri sonucunda tarayıcının alandaki mayınları tarayıp temizlemesini sağlamaktır. Kullanıcı mayın ekleme çıkarmanın yanında tarayıcıya engel olacak duvarlar da yerleştirebilmektedir.

Girdiler

Projede başlangıç için iki tane girdi alınmaktadır. Bu girdiler x ve y koordinatlarıdır. Bu koordinatlara göre X * Y ‘lik kenarları duvar halinde bir mayın alanı oluşturulur daha sonra kullanıcılar alan üzerinde istedikleri noktalara engel ekleyebilir.

Çıktılar

Kullanıcıdan alınan X ve Y değerleri sonucunda 2 boyutlu, kenarları duvar ile kaplı bir alan elde ediliyor.

Mantığı

Kullanıcının girdileri ile oluşturulan alan içerisindeki tarayıcının gezmediği alanların değeri 0, duvar koyulan alanlar ile kullanıcının duvar eklediği alanlarda 9999’dur. Buna bağlı olarak tarayıcımız her geçtiği alanı 1 artırarak bölgede ilk önceliği yukarı yön olmak üzere sırasıyla sol, sağ ve aşağı yönlere yönelir. Geçtiği alanlardan tekrar geçebilir.

Ekran Çıktıları

Değerleri Aldığımız Ekran test0 Panel üzerinde duvar ekleme / harita hali test1 Başladıktan sonra tarama işlemi ekranı test2

Test Durumları

Başarılı Test Durumları

  1. Kullanıcıdan istenen X ve Y boş geçilemez.
  2. X ve Y değerlerinin eksi değer, harf ve özel karakter olarak girilemez.
  3. İstenen değerler girilmediği sürece alan oluşturulmadan oyuna başlanamaz.
  4. Girdiler belirli aralıkta olmalıdır.
  5. Değerler minimum 5 x 5 olmalıdır.
  6. Değerler en fazla 30 x 17 olmalıdır. (Bu kısıtlama ekran çözünürlüğünün 1366 x 768 olmasından kaynaklıdır.)
  7. Tarama işlemine başlandıktan sonra tekrar alan oluşturulamaz.
  8. Alan oluşturulmadan tarama işlemine başlanamaz.
  9. Tarayıcının etrafı kapatılamaz.
  10. Bir matının dört tarafı kapatılamaz.

Başarısız Test Durumları

  1. Alanın ortasına engel koyma engellenemedi.
  2. Çözünürlükten kaynaklı sınırlama yapıldı.

About

Yazılım Sınama dersi ikinci projesi

License:MIT License


Languages

Language:C# 100.0%