PHP OOP ile Uygulama Test Etmek

PHP OOP ile Uygulama Test Etmek

PHP OOP ile uygulama geliştirirken doğru sonuçları almak için test etmek çok önemlidir Bu yazıda, PHP OOP testi yapmanın önemini ve nasıl yapıldığını anlattık Kendinizi geliştirin ve doğru sonuçlar alın!

PHP OOP ile Uygulama Test Etmek

Bu makalede, PHP uygulamalarınızı Nesne Yönelimli Programlama (OOP) prensiplerine göre test etmek için gereken tüm adımları öğreneceksiniz. OOP, daha düzenli ve okunaklı kodlar yazmanıza olanak tanır. Ayrıca, bakım ve test işlemlerini de büyük ölçüde kolaylaştırır. PHPUnit, PHP uygulamalarını test etmek için yaygın bir test çerçevesidir ve OOP prensipleriyle uyumludur. Aşağıda, PHPUnit'in kurulumu, test sınıfı ve metotlarının oluşturulması ve testlerin nasıl çalıştırılacağı hakkında ayrıntılı bilgilere yer verilmiştir.


Neden OOP kullanmalısınız?

OOP, diğer programlama tekniklerine göre daha organize, yönetilebilir ve okunabilir bir kod yazmanıza yardımcı olur. Kodunuzu sınıflara ayırarak düzenli bir yapı oluşturabilir ve kod tekrarı yapmadan yeniden kullanabilirsiniz. Bu, geliştirme sürecinizi hızlandırır ve daha az hata yapmanızı sağlar.

Bunun yanı sıra, OOP kodunu yönetmek ve bakımını yapmak da daha kolaydır. Kodunuza sonradan eklemeler yapmak veya değişiklikler yapmak istediğinizde, sadece ilgili sınıfı veya fonksiyonu düzenlemekle işe başlayabilirsiniz. Bu sayede kodunuzu daha kolay bir şekilde yönetebilirsiniz.

Ayrıca, test işlemlerini de OOP sayesinde daha kolay bir hale getirebilirsiniz. Test sınıfları oluşturarak, fonksiyonların doğru çalıştığından emin olabilirsiniz. Bu sayede hataları önceden tespit ederek, uygulamanızı daha güvenli hale getirebilirsiniz.


PHPUnit Nedir?

PHPUnit, PHP uygulamalarınızın farklı birimlerini test edebilmeniz için kullanabileceğiniz bir test çerçevesidir. Bu çerçeve, OOP prensiplerine dayanmaktadır ve uygulamalarınızın doğru çalışıp çalışmadığını kontrol etmek için kullanabilmeniz için geliştirilmiştir.

PHPUnit, pek çok popüler PHP uygulamasında standart bir araçtır ve tüm önemli PHP çerçeveleri tarafından desteklenir. Bu test çerçevesi üzerinde çalışmanın ana avantajı, PHP uygulamalarınızı test etmek için gereken tüm işlemlere sahip olmasıdır. Bu sayede, uygulamanızın doğru çalıştığından emin olabilirsiniz.

PHPUnit ayrıca, testlerinizi gruplandırmanıza ve kendi test metodlarınızı oluşturmanıza izin verir. Bu şekilde, uygulama testleri için daha spesifik bir yaklaşım izleyebilir ve testlerinizin daha anlamlı olmasını sağlayabilirsiniz.

Bu nedenle, PHPUnit, PHP uygulamalarınızın kalitesini artırmak için kullanabileceğiniz güçlü bir araçtır. OOP prensiplerine dayanması ve tüm önemli PHP çerçeveleri tarafından desteklenmesi, uygulama testlerinizi daha kolay ve etkili hale getirir.


PHPUnit Kurulumu

PHPUnit, PHP uygulamalarınızı test etmek için kullandığımız yaygın bir test çerçevesidir. Yükleme işlemini yapmak için Composer kullanarak veya Phar dosyasını indirerek yükleyebilirsiniz.

PHPUnit'i yüklemenin en popüler ve önerilen yolu, Composer kullanarak yüklemektir. İşte adımlar:

1. Terminal/CMD'yi açın ve proje klasörünüze gidin.
2. PHPUnit'i yükleyin: composer require --dev phpunit/phpunit

Composer, projenizin bağımlılıklarını yönetmek ve yüklemek için bir PHP paket yöneticisidir. Yukarıdaki komut PHPUnit'i projenize yükleyecektir. "--dev" parametresi, bütün geliştirme işlemleri tamamlandıktan sonra prodüksiyon sunucusuna yüklemediğiniz anlamına gelir.

Bir diğer kurulum yöntemi ise Phar dosyası olarak yüklemektir. İşte yükleme adımları:

1. Terminal/CMD'yi açın ve indirme konumuna gidin.
2. Phar dosyasını indirin: wget https://phar.phpunit.de/phpunit.phar
3. Dosyayı taşınabilir bir konuma taşıyın: mv phpunit.phar /usr/local/bin/phpunit
4. Dosyayı geri çağırılabilir hale getirin: chmod +x /usr/local/bin/phpunit

Bu adımlar, Phar dosyasını doğru yerlere indirerek, sistemde doğru kurulumun yapılmasını sağlar. Tüm adımlar tamamlandıktan sonra PHPUnit'i kullanmaya hazırsınız.


Composer Kullanarak PHPUnit Kurulumu

PHPUnit'in yüklenmesi için Composer kullanmak, kurulumu oldukça basitleştirir. İşlem adımlarını takip ederek, hızlı ve kolay bir şekilde PHPUnit'i yükleyebilirsiniz:

  • 1. Terminal/CMD'yi açın ve proje klasörüne gidin.
  • 2. Composer kullanarak PHPUnit'i yükleyin: composer require --dev phpunit/phpunit

Ardından, PHPUnit yüklendikten sonra, testlerinizi kod yazarak ve çalıştırarak kontrol edebilirsiniz. PHPUnit tarafından sağlanan API'leri kullanarak özelleştirilmiş testler oluşturabilirsiniz.

2. Composer kullanarak PHPUnit'i yükleyin: composer require --dev phpunit/phpunit

PHPUnit'i yüklemek için Composer kullanmak oldukça kolaydır. Composer'ı yüklemediyseniz, resmi web sitesinden yükleyebilirsiniz. Daha sonra terminal/CMD'yi açın ve proje klasörünüze gidin. Aşağıdaki komutu kullanarak PHPUNIT'i yükleyin:

Komut Açıklama
composer require --dev phpunit/phpunit PHPUnit'i yükler ve geliştirici gereksinimleri olarak ekler.
composer require --dev phpunit/phpunit:^9 PHPUnit'in istediğiniz bir sürümünü yükler.

Composer'ın yüklenmemiş bir sürümünü kullanıyorsanız, yukarıdaki komutlar çalışmayabilir. Bu durumda, Composer'ı güncellemek için aşağıdaki komutu kullanın:

  • composer self-update

Composer, PHP paketleri için en popüler bağımlılık yöneticisidir. Bu nedenle, yeni PHP projesi oluşturduğunuzda başlayacağınız en iyi yerlerden biri Composer'dır.


Phar Dosyası Olarak PHPUnit Kurulumu

PHPUnit, Composer dışında Phar dosyası olarak da mevcuttur. Kurulum için aşağıdaki adımları izleyebilirsiniz:

  1. Terminal/CMD'yi açın ve indirme konumuna gidin.
  2. Phar dosyasını indirin:
    wget https://phar.phpunit.de/phpunit.phar
  3. Dosyayı taşınabilir bir konuma taşıyın:
    mv phpunit.phar /usr/local/bin/phpunit
  4. Dosyayı geri çağırılabilir hale getirin:
    chmod +x /usr/local/bin/phpunit

Bu adımları takip ettikten sonra, PHPUnit'in Phar dosyasını kullanarak testlerinizi yazabilir ve çalıştırabilirsiniz.

2. Phar dosyasını indirin: wget https://phar.phpunit.de/phpunit.phar

PHPUnit kullanmak için, Phar dosyasını indirmeniz gerekebilir. Bunu yapmak için, önce Terminal/CMD'yi açın ve indirme konumuna gidin. Daha sonra, aşağıdaki komutu kullanarak Phar dosyasını indirin:

Komut wget https://phar.phpunit.de/phpunit.phar

İndirme işlemi tamamlandıktan sonra, dosyayı taşınabilir bir konuma taşımanız ve geri çağırılabilir hale getirmeniz gerekir. Aşağıdaki komutları kullanarak bu işlemleri yapabilirsiniz:

  • Dosyayı taşınabilir bir konuma taşıma:
  • Komut mv phpunit.phar /usr/local/bin/phpunit
  • Dosyayı geri çağırılabilir hale getirme:
  • Komut chmod +x /usr/local/bin/phpunit

Bu adımları tamamladıktan sonra, Phar dosyası olarak PHPUnit kurulumunuz tamamlanmış olacaktır. Artık bu test çerçevesini kullanarak PHP uygulamalarınızı test edebilirsiniz.

3. Dosyayı taşınabilir bir konuma taşıyın: mv phpunit.phar /usr/local/bin/phpunit

PHPUnit, PHP uygulamalarınızı test etmek için kullanabileceğiniz yaygın bir test çerçevesidir. Phar dosyası olarak indirdiyseniz, dosyayı taşınabilir bir konuma taşımanız gerekebilir. Bu, PHPUnit'i istediğiniz herhangi bir dizinde çalıştırmanıza olanak tanır.

Phar dosyasını /usr/local/bin/phpunit konumuna taşımak için mv phpunit.phar /usr/local/bin/phpunit komutunu kullanabilirsiniz. Bu, dosyayı kullanabileceğiniz dosya yoluna taşıyacaktır. Dosya taşındıktan sonra, dosyanın geri çağırılabilir hale getirilmesi gerekir. Bu işlem için chmod +x /usr/local/bin/phpunit komutu kullanılabilir.

4. Dosyayı geri çağırılabilir hale getirin: chmod +x /usr/local/bin/phpunit

PHPUnit, PHP uygulamalarınızı test etmek için kullanabileceğiniz yaygın bir test çerçevesidir. OOP prensiplerine dayalıdır ve uygulamanın doğru çalışmasını kontrol eder. Ancak bir dosya olarak indirdiğinizde, yürütülebilir dosya yapmanız gerekebilir. Bu durumda, dosyayı geri çağırılabilir hale getirmeniz gerekir. Bunun için aşağıdaki işlemleri yapabilirsiniz:

  • Terminal/CMD'yi açın ve dosyanın konumuna gidin.
  • chmod +x /usr/local/bin/phpunit komutunu uygulayın. Bu, dosyayı geri çağırılabilir hale getirir.

Bu işlem, PHPUnit'i doğru şekilde yüklediğinizden ve kullanmaya hazır olduğunuzdan emin olmanıza yardımcı olacaktır. PHP OOP kullanarak uygulama testi yapmak için diğer adımları öğrenmek için makalenin geri kalanını okuyabilirsiniz.


PHPUnit ile Test Yazma

Testler, kodunuzun doğru çalıştığını kontrol etmenin yanı sıra, gelecekte yapacağınız değişikliklerin eski kodu bozup bozmadığını kontrol etmek için de gereklidir. Bu nedenle, doğru testler oluşturmak, kodunuzun kalitesini önemli ölçüde artırabilir.

Testleriniz, işlevlerin, sınıfların ve hatta tüm uygulamanın doğru çalıştığını kontrol etmenize yardımcı olur. Bu nedenle, her bir testte, test edilen kod parçasının beklenen çıktılarını kontrol edersiniz. Bu işlemi kontrol eden araçlardan biri de PHPUnit'dir.

PHPUnit, testlerinizi oluşturmak ve çalıştırmak için kullanabileceğiniz açık kaynaklı bir PHP test çerçevesidir. Bu test çerçevesi, PHP'de Nesne Yönelimli Programlama (OOP) prensiplerine dayalıdır.

Test yazmak için, öncelikle test sınıfını oluşturmanız gerekir. Bir test sınıfını, PHPUnit\Framework\TestCase sınıfını genişleterek oluşturabilirsiniz. Daha sonra test metotlarını oluşturabilirsiniz. Bu sınıf, testlerinizi organize etmenize ve her bir test metotunu ayrı ayrı çalıştırmanıza olanak sağlar.

Test metotlarının yazılması, bir örnek oluşturmak, gerekli parametreleri almak ve beklenen sonuçları kontrol etmekten oluşur. Test metodu tamamlandıktan sonra, diğer testlere geçin.

Kısacası, testlerin yazılması, PHP kodunuzun düzgün bir şekilde çalıştığını kontrol etmek için gereklidir. PHPUnit ile kolayca test sınıfları oluşturabilir ve test metotlarını oluşturabilirsiniz. Bu sayede, kodunuzun doğru çalıştığından emin olabilirsiniz.


Test Sınıfının Oluşturulması

PHPUnit ile uygulama testlerini yazmak için bir test sınıfı oluşturmanız gerekiyor. Test sınıfı, test metodlarını içerir ve her biri uygulamanızın farklı bölümlerini test eder.

Test sınıfınız, PHPUnit\Framework\TestCase sınıfını genişleterek oluşturulabilir. Bu, test metodlarının yazılmasını kolaylaştırır ve test sınıfıyla birlikte gelen tüm özelliklerden yararlanmanızı sağlar.

Test sınıfınızı özel bir klasöre yerleştirmenizi öneririz. Bu, test dosyalarınızın ana uygulama dosyalarınızla karıştırılmamasını ve daha kolay yönetilmesini sağlar.

Bir test sınıfı oluşturduktan sonra, test metodlarını ekleyebilirsiniz. Her test metodu, farklı uygulama özelliklerini test eder ve beklenen sonuçları kontrol eder.

Bu adımdan sonra, uygulama test etmek için gerekli olan tüm adımları tamamlamış olacaksınız ve PHPUnit kullanarak testlerinizi çalıştırabilirsiniz. Bir sonraki adım, testlerinizi yazmak için gerekli olan test metodlarını oluşturmak olacaktır.

2. PHPUnit\Framework\TestCase sınıfını genişletin.

PHPUnit\Framework\TestCase sınıfı, PHPUnit tarafından sağlanan bir sınıftır ve test sınıflarının temelini oluşturur. Bu sınıfı kullanarak test sınıflarınızı genişletebilirsiniz.

Bunun için, öncelikle PHPUnit\Framework\TestCase sınıfını genişletmeniz gerekiyor. Bu işlem, sınıfınıza tüm PHPUnit özelliklerini eklemenizi sağlar.

Örneğin, aşağıdaki kod, bir test sınıfı için temel şeklini oluşturacaktır:

use PHPUnit\Framework\TestCase;class MyTest extends TestCase{  // test metotları burada yer alacaktır.}

Bu şekilde, test sınıflarınız için temel kod yapısını oluşturabilirsiniz. Artık bu sınıfı kullanarak test metotlarınızı ekleyebilirsiniz.

3. Test metotlarını sınıfa ekleyin.

JUnit\Framework\TestCase sınıfını genişlettiğinizde, test metotlarınızı test sınıfınıza ekleyebilirsiniz. Bu test metotları, uygulamanızın farklı işlevlerini veya sınıflarını test etmek için kullanılabilir.

Test metotlarının adı, "test" ile başlamalıdır ve ardından testin neyi kontrol ettiği belirtilmelidir. Örneğin, bir "testAddition" metodu, iki sayının toplamını test edebilir.

Bunun dışında, bir setUp() metodu oluşturarak testlerinizde kullanacağınız nesnelerin örneklerini oluşturabilirsiniz. tearDown() metodu, testlerinizin tamamlandığında temizlik yapmak için kullanılır.

Test sınıfınızdaki tüm test metotları, komut satırında "phpunit" komutu kullanılarak çalıştırılabilir.


Test Metotlarının Yazılması

Test metotları, kodun bölümlerinin nasıl çalıştığını ve birbirleriyle nasıl etkileşimde bulunduklarını kontrol ederler. Öncelikle, bir test metodu oluşturmak için bir örnek oluşturmanız gerekir. Bu örnek, testlerinizde kullanacağınız verileri ve işlevleri barındırır. Bu nedenle, bir test örneği oluşturmak için öncelikle test yapmak istediğiniz sınıfı ve onun işlevlerini belirlemeniz gerekir.

Bir kez örnek oluşturulduktan sonra, gerekli parametreleri alın ve bunları işlevlere iletebilirsiniz. Bu, işlevin doğru bir şekilde çalıştığını kontrol etmenize olanak tanır. Son adım olarak, beklenen sonuçları kontrol edin. Test metodunu tamamladıktan sonra, diğer testlere geçebilirsiniz. Ayrıca, test verilerinizi çeşitlendirmeyi ve birden fazla senaryoda test etmeyi unutmayın.

2. Gerekli parametreleri alın.

Test metotlarının yazılmasında, gerekli parametreleri almak oldukça önemlidir. Bu parametreler, fonksiyon ya da sınıfın istediği değerleri içermelidir. Böylece, fonksiyonun doğru şekilde çalıştığını kontrol edebilirsiniz.

Örneğin, bir sınıf oluşturduysanız ve bu sınıf bir hesaplama işlemi yapıyorsa, test metodu içinde giriş parametreleri (örneğin sayılar) belirleyip, çıktı parametrelerinin (hesaplama sonucu) doğru olmasını bekleyebilirsiniz.

Bu amaçla, assert fonksiyonları kullanılır. Bu fonksiyonlar, beklenen değerin gerçek değerle aynı olup olmadığını kontrol ederler. Örneğin,

  • assertEquals() - İki değerin eşit olup olmadığını kontrol eder.
  • assertGreaterThan() - Bir değerin diğerinden büyük olup olmadığını kontrol eder.
  • assertLessThan() - Bir değerin diğerinden küçük olup olmadığını kontrol eder.

Bunların yanı sıra, fonksiyon sırasında alınacak hataları kontrol etmek için de bazı fonksiyonlar mevcuttur. Bunlar, başarılı bir test sürecinde geçilecek olan hataları azaltmak için oldukça önemlidir. Örneğin, assertNotFalse() fonksiyonu, değer false döndüğünde başarısız olur.

Bu parametrelerin doğru şekilde belirlenmesi, test sürecindeki başarı oranını etkileyecektir. Böylece, uygulamanızın doğru şekilde çalışıp çalışmadığını kontrol edebilirsiniz.

3. Beklenen sonuçları kontrol edin.

Testlerinizin ana amacı, işlevlerin ve sınıfların beklenen sonuçları verip vermediğini kontrol etmektir. Bu nedenle, her test metodu, belirli bir işlevi veya sınıfı içerecek şekilde tasarlanmalıdır. Testi yazmak için, öncelikle bir örnek oluşturun ve gerekli parametreleri alın. Ardından, beklenen sonuçları kontrol edin.

Burada, assertTrue() veya assertEquals() gibi NUnit içerisindeki önceden tanımlanmış işlevleri kullanabilirsiniz. Bu işlevler, beklenen sonuçların doğrulanmasına yardımcı olur.

Ayrıca, isterseniz özel bir sonuç doğrulama işlevi de yazabilirsiniz. Bu işlevin içinde belirli koşulları kontrol edip sonucun doğruluğunu kontrol edebilirsiniz.

Testi yazdığınızda, test metodu tamamlandıktan sonra diğer testlere geçin. Tüm testler doğru bir şekilde çalıştırıldıktan sonra, uygulamanızın beklenen sonuçları verip vermediğini kontrol etmek için tüm testlerin çalıştırılması gerekmektedir.

Belirli bir testi yürütmek için, test sınıfınızın adını ve çalıştırmak istediğiniz test metodunu belirten bir komut satırı kullanabilirsiniz. Bu sayede, test sürecinizi hızlandırabilirsiniz.

Bir sonraki adım, test sonuçlarının analiz edilmesidir. PHPUnit, sonuçları HTML formatında raporlayabilir. Rapor, hatalar ve başarılı testler hakkında bilgi sağlar ve uygulamanızın ne kadar performans sergilediğine dair fikir verir.

4. Test metodu tamamlandıktan sonra, diğer testlere geçin.

Test metodunuzu hazırladıktan sonra, beklenen sonuçlara uygunluğunu kontrol etmek için çalıştırmalısınız. Test başarılı olursa, diğer testlere geçebilirsiniz. Yeni bir test sınıfı veya test metodu oluşturmak için, önceki adımda olduğu gibi, TestCase sınıfını genişletmelisiniz.


PHPUnit ile Test Çalıştırma

Testlerinizi yazdıktan sonra, bunları çalıştırmak ve sonuçları görmek için PHPUnit kullanabilirsiniz. Testleri çalıştırmak için, terminale veya komut istemine phpunit komutunu yazarak testlerinizi otomatik olarak çalıştırabilirsiniz. Bu işlem, tüm test sınıflarının ve metodlarının çalıştırılmasını sağlar.

Eğer sadece seçili testleri çalıştırmak istiyorsanız, phpunit ile test sınıfının veya metodu belirtilerek çalıştırılabilir. Aşağıdaki örnek, sadece ExampleTest adlı test sınıfını çalıştıracaktır:

phpunit tests/ExampleTest.php

PHPUnit'in diğer bir özelliği de, test sonuçlarını raporlama seçeneği sunmasıdır. Bu raporlar, testlerinizin geçip geçmediğini, başarısız testlerin neden başarısız olduğunu ve diğer ayrıntıları içerir. Aşağıdaki örnek, XML formatında test sonuçlarını raporlayacaktır:

phpunit --log-junit test-results.xml

Bunun yanı sıra, testlerinizi çalıştırırken belirli ayarları yapabilirsiniz. Örneğin, test sınıflarını belirli bir sıraya göre çalıştırmak isteyebilirsiniz. Bunu sağlamak için aşağıdaki komutu kullanabilirsiniz:

phpunit --order-by=defects

Bu komut, hatalı test metodlarına öncelik verir ve onları önce çalıştırır.


Sonuç

Bu makalede, PHP'de Nesne Yönelimli Programlama (OOP) kullanarak uygulama test etmek için gerekli adımları öğrendiniz. PHPUnit, OOP prensiplerine dayalı yaygın bir test çerçevesidir ve PHP uygulamalarınızın doğru çalıştığını kontrol etmenize olanak sağlar.

PHPUnit kurulumunun nasıl yapılacağına ve test sınıflarının nasıl oluşturulacağına değindik. Örnekler ve adımlarla PHPUnit ile test yazma süreci anlatıldı. Ayrıca, tüm testleri çalıştırmak için kullanılan terminal/CMD komutu da açıklandı.

Sonuç olarak, PHP OOP kullanarak uygulama testleri yazabilir ve yapılandırabilirsiniz. PHPUnit, kodunuzun doğru çalıştığını doğrulamanıza yardımcı olurken kodunuzun daha organize, yönetilebilir ve okunabilir olmasını sağlar. Test yazma sürecinde göz önünde bulundurmanız gereken adımlar makalemizde anlatıldı. PHP'de OOP ile uygulama testi yapmak isteyenler için rehber niteliğinde olan bu makale ile uygulama testlerinizde başarılar dileriz.