cari
Rumahpembangunan bahagian belakangtutorial phpSylius dan memotong gigi anda di TDD

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
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

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

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

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
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
Penalaan prestasi PHP untuk laman web trafik yang tinggiPenalaan prestasi PHP untuk laman web trafik yang tinggiMay 14, 2025 am 12:13 AM

Thesecrettokeepingaphp-poweredwebsiterunningsmoothlyunderheavyloadinVolvesserVeSkeystrategies: 1) pelaksanaanPodeCachingWithopCachetoreduceScriptexecutionTime, 2) UsedataBasequerycachingWnithSoRessendataBaBAboad, 3)

Suntikan Ketergantungan dalam PHP: Contoh Kod untuk PemulaSuntikan Ketergantungan dalam PHP: Contoh Kod untuk PemulaMay 14, 2025 am 12:08 AM

Anda harus mengambil berat tentang kebergantungan (DI) kerana ia menjadikan kod anda lebih jelas dan lebih mudah untuk dikekalkan. 1) Di menjadikannya lebih modular dengan decoupling kelas, 2) meningkatkan kemudahan ujian dan fleksibiliti kod, 3) menggunakan bekas DI untuk menguruskan kebergantungan kompleks, tetapi memberi perhatian kepada kesan prestasi dan kebergantungan bulat, 4) Amalan terbaik adalah bergantung kepada antara muka abstrak untuk mencapai gandingan longgar.

Prestasi PHP: Adakah mungkin untuk mengoptimumkan aplikasi?Prestasi PHP: Adakah mungkin untuk mengoptimumkan aplikasi?May 14, 2025 am 12:04 AM

Ya, OptimizingaphpapplicationIspossibleandessential.1) pelaksanaanCachingUsingAputeDeducedeDataBaseload.2) OptimisedataTabaseseseshithindexing, eficientqueries, danConnectionPooling.3) EnhancecodeWithBuilt-Infungsi, EveringGlobalVariables

Pengoptimuman Prestasi PHP: Panduan TerbaikPengoptimuman Prestasi PHP: Panduan TerbaikMay 14, 2025 am 12:02 AM

ThekeystrategiestoSignificLantantlyboostphpapplicationperformanceare: 1) useopcodecachinglikLikeopcachetoreduceExecutionTime, 2) OptimizedataBaseInteractionsWithPreparedStatementsandProperindexing, 3) ConfigureWebserverserverLikenginxWithPmforbetterShipter.

Kontena Suntikan Ketergantungan PHP: Permulaan yang cepatKontena Suntikan Ketergantungan PHP: Permulaan yang cepatMay 13, 2025 am 12:11 AM

AphpdependencyInjectionContainerisatoLthatMatagesClassDependencies, EnhancingCodeModularity, Testability, andMaintainability.itactsascentralHubforcreatingandinjectingdependencies, sheReducingTightCouplingandeaseaseaseSunittesting.

Suntikan ketergantungan berbanding pencari perkhidmatan di phpSuntikan ketergantungan berbanding pencari perkhidmatan di phpMay 13, 2025 am 12:10 AM

Pilih DependencyInjection (DI) Untuk aplikasi besar, servicelocator sesuai untuk projek kecil atau prototaip. 1) DI meningkatkan kesesuaian dan modulariti kod melalui suntikan pembina. 2) ServiceLocator memperoleh perkhidmatan melalui pendaftaran pusat, yang mudah tetapi boleh menyebabkan peningkatan gandingan kod.

Strategi Pengoptimuman Prestasi PHP.Strategi Pengoptimuman Prestasi PHP.May 13, 2025 am 12:06 AM

Phpapplicationscanbeoptimizedforspeedandeficiencyby: 1) enablingopcacheinphp.ini, 2) menggunakan preparedSwithpdofordatabasequeries, 3) menggantikanloopswitharray_filterandarray_mapfordataprocessing, 4) configuringnginywinginywinyvinyvinginy

Pengesahan E -mel PHP: Memastikan e -mel dihantar dengan betulPengesahan E -mel PHP: Memastikan e -mel dihantar dengan betulMay 13, 2025 am 12:06 AM

PhpeMailvalidationInvolvestHreesteps: 1) formatValidationingRegularExpressionStocheckTheemailFormat; 2) dnsvalidationtoensurethedomainhasavalidmxrecord;

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Nordhold: Sistem Fusion, dijelaskan
4 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Cara Membuka Kunci Cangkuk Bergelut
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

Versi Mac WebStorm

Versi Mac WebStorm

Alat pembangunan JavaScript yang berguna

SublimeText3 Linux versi baharu

SublimeText3 Linux versi baharu

SublimeText3 Linux versi terkini

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual