Rumah > pembangunan bahagian belakang > tutorial php > Sylius dan memotong gigi anda di TDD

Sylius dan memotong gigi anda di TDD

William Shakespeare
Lepaskan: 2025-02-10 12:58:11
asal
457 orang telah melayarinya

Artikel ini meneroka Sylius, aplikasi e-dagang berasaskan simfoni, dan pendekatan yang mantap untuk pembangunan yang didorong oleh ujian (TDD), mencapai liputan kod 100%-prestasi yang luar biasa untuk aplikasi PHP skala. Kami akan membimbing anda melalui menubuhkan persekitaran ujian Sylius, yang meliputi penciptaan pangkalan data dan konfigurasi untuk Behat, PHPUNIT, dan PHPSPEC.

Sylius and Cutting Your Teeth on TDD

Artikel ini menekankan kepentingan kedua -dua pembangunan yang didorong oleh tingkah laku (BDD) dan TDD di Sylius, menunjukkan bagaimana metodologi ini meningkatkan kualiti kod dan penyelenggaraan. Contoh praktikal menggambarkan mengubahsuai ciri-ciri sedia ada dan menambah fungsi baru menggunakan pendekatan ujian pertama.

Sylius memanfaatkan rangka kerja Symfony, dan kodnya berada dalam folder

, menyimpan kod aplikasi tersuai anda yang terpisah dalam folder src. Untuk memulakan TDD, kita mula -mula mengkonfigurasi pangkalan data ujian: app

php bin/console doctrine:database:create --env=test
php bin/console doctrine:schema:create --env=test
Salin selepas log masuk
Sylius menawarkan pelbagai jenis ujian:

phpUnit: Sylius termasuk banyak ujian fungsional phpunit. Konfigurasi () terletak di akar web, dengan ujian unit dalam folder phpunit.xml.dist. Ujian berlari (mis., ) melibatkan: tests tests/Controller/CountryApiTest.php

./vendor/phpunit/phpunit/phpunit -c ./phpunit.xml.dist tests/Controller/CountryApiTest
Salin selepas log masuk

Sylius and Cutting Your Teeth on TDD phpspec:

Untuk pembangunan yang didorong oleh tingkah laku (BDD), Sylius menggunakan PHPSPEC. Spesifikasi ditulis dalam kelas PHP, sering dikelompokkan ke dalam suite. Menjalankan PHPSPEC (mis.,

): src/Sylius/Component/Order/spec/Model/OrderItemSpec.php

./bin/phpspec run -fpretty --verbose src/Sylius/Component/Order/spec/Model/OrderItemSpec.php
Salin selepas log masuk

Behat: Sylius and Cutting Your Teeth on TDD Behat memudahkan StoryBDD, menggunakan sintaks gherkin untuk menggambarkan tingkah laku aplikasi dalam fail ciri. Sylius menyediakan folder

dan

. Menjalankan Ujian Behat (mis., ): behat.yml.dist features features/order/managing_orders/browsing_orders.feature

./bin/behat features/order/managing_orders/browsing_orders.feature
Salin selepas log masuk

Sylius and Cutting Your Teeth on TDD mari kita menggambarkan TDD dengan menukar ikon halaman senarai pesanan. Kami akan mengikuti langkah -langkah ini:

Tambahkan ciri:

Buat

.
  1. Tambahkan objek halaman: features/order/managing_orders/browsing_orders_with_visual_display.feature Buat

    dan
  2. . Daftar objek halaman dalam
  3. .

  4. Tambahkan konteks: Tambahkan konteks Behat dalam src/Sylius/Behat/Resources/config/services/contexts/ui.xml dan buat src/Sylius/Behat/Context/Ui/Admin/ViewingPageIconContext.php.

Dengan menulis ujian terlebih dahulu, kemudian membuat perubahan kod untuk lulus ujian tersebut, kami memastikan aplikasi yang boleh dipercayai dan mantap. Artikel ini menyediakan asas untuk memahami dan melaksanakan TDD dalam Rangka Kerja E-Commerce Sylius.

Sylius and Cutting Your Teeth on TDD

Artikel ini menyimpulkan dengan menekankan keberkesanan TDD untuk membina perisian yang boleh dipercayai dan menggalakkan pendekatan ujian pertama. Bahagian FAQ selanjutnya menjelaskan konsep Sylius dan TDD.

Atas ialah kandungan terperinci Sylius dan memotong gigi anda di TDD. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan