Unit testing
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

Unit testing

  • 247 views
Uploaded on

Kod yazarken,unit testi kullanmanın yararları..

Kod yazarken,unit testi kullanmanın yararları..

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
247
On Slideshare
247
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
2
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. İsim&Soyisim : Serdar SÖNMEZ Proje Konusu : Unit Testing(Birim Testi) Universite : Uluslararası Kıbrıs Üniversitesi
  • 2. Hata Ayıklama • Proğramcılığın kaçınılmaz uğraşlarından birisi hata ayıklamaktır. • İçinde bilgisayar yazılımı içeren her cihaz yazılım hataları içerebilir. • Yazılım hatalarına örnek verecek olursak,kol saati gibi basit elektronik cihazlardan uzay aracı gibi büyük sistemlere kadar örnek verebiliriz.
  • 3. Hata Nedenleri Yazılım hatalarının çok çeşitli nedenleri vardır. Bunlardan bazılarını örnek verecek olursak; • Programdan istenenler açık bir şekilde ortaya konmamış olabilir. • Programcı programdan istenenleri yanlış anlamış olabilir. • Programcının varsayımları yanlış çıkabilir.Örneğin pi sayısının 3.14 alması yeterli olduğu varsayılmış olabilir. • Programcı kodu yazarken dikkatsizlik yapılmış olabilir.
  • 4. Hata Farkedildiği Zaman Yazılım hatasının ne zaman farkına varıldığıda çeşitlilik gösterir. • Kod yazılırken • Kod incelenirken • Program kullanımdayken
  • 5. Kod Yazım Aşaması Kod yazılırken; • Programı yazan kişi tarafından, • Pair programming yöntemi uygulandığında, takım arkadaşı tarafından, • Derleyici tarafından, • Programın programcı tarafından oluşturulması sırasında Birim Testleri tarafından
  • 6. Birim Testi(Unit Testing) • Bir bilgisayar programında yapılan işlemlerin en küçük birimden başlayarak belirli testler doğrultusunda tutarlılık,doğruluk ve verimlilik ölçme sistemidir. • Bir uygulamanın içerisindeki bir fonksiyonu veya bir sınıfın (class) içerisindeki bir metodu test etmek için yazılır. • O metodu veya fonksiyonu dışarıdan tamamen soyutlayarak(alacağı parametreler hazırlanarak veya etkileşime geçeceği fonksiyonların dönüş değerleri yine dışardan etkilenmeyecek şekilde belirlenerek) çalıştırıp beklenen sonucu üretip üretmediğini kontrol etmek için yazılmış testlerdir. • Yani bilinen bir girdiye karşılık, beklenen sonucu üreten program parçaları birim testi geçer. • Mikro ölçekte yapılan bu testte, özel fonksiyonlar veya kod modülleri test edilir.
  • 7. Birim Test’in Sağladıkları • Ne yazık ki bunun tersi doğru değildir: birim testlerinin olması, kodun hatasız olduğunu kanıtlamaz; ama hata oranını çok büyük ölçüde azaltır. • Kodların anlaşılmasını kolaylaştırır. • Birim test yaparken temel amaç yazdığınız kodun her satırının başka bir kod tarafından otomatik olarak test edilmesidir. • Koddaki hata oranını azaltıp,kod kalitesinin artmasını sağlar. • Birim Test sadece uç programlama yapılırken değil aynı zamanda her programcının yazdığı kodların verimliliği ve uzun vadede çıkabilecek gereksiz geriye dönüşleri engeller. • Birim testleri ayrıca kodun rahatça ve güvenle geliştirilebilmesini de sağlarlar. Kod üzerinde değişiklik yapmak, örneğin yeni olanaklar eklemek, doğal olarak o kodun eski olanaklarının artık hatalı hale gelmelerine neden olabilir. Birim testleri kullanarak, bu tür aksaklıkların önüne geçebiliriz. • Birim test yazmak yazılan kodları programcı gözüyle çalıştırmaktır.
  • 8. Örneğin; • Bir controller olsun diyelim. Bu controller'ın içinde kullanıcı bilgilerini veritabanına kaydeden bir metod olsun. • Biz bu metoda parametre olarak (POST, GET vs. isteği ile) kullanıcı bilgilerini verip, metot çalıştıktan sonra da beklenen çıktıyı, • Değerler yanlışsa ilgili ilgili hata mesajı verilmiş mi? • Değerler doğruysa doğru sayfaya yönlenmiş mi? vermiş mi diye kontrol edersek birim test çalıştırmış oluruz.
  • 9. [CodeXample] [TestFixture()] NUnitTest { } [Test()] public void Bolme() { try{ int a=100; int b=0; int c = a/b; } catch(DivideByZeroException ex) { } }