Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menggunakan Behat dengan CakePHP?

Bagaimana untuk menggunakan Behat dengan CakePHP?

WBOY
WBOYasal
2023-06-05 08:32:061162semak imbas

CakePHP ialah rangka kerja PHP yang sangat popular, corak reka bentuk dan strukturnya sangat sesuai untuk membangunkan aplikasi web. Behat, sebaliknya, ialah rangka kerja ujian BDD (Pembangunan Didorong Tingkah Laku) yang popular yang membantu kami menguji aplikasi kami dalam cara yang kolaboratif dan boleh dibaca. Dalam artikel ini, saya akan menunjukkan kepada anda cara menggunakan Behat dalam CakePHP untuk menguji kod kami dengan lebih baik.

Apakah Behat?

Behat ialah rangka kerja BDD sumber terbuka yang berdasarkan bahasa khusus domain (DSL) untuk mentakrifkan gelagat dan senario. Idea teras Behat ialah "pembangunan dipacu biobehavior", yang bermaksud bahawa anda boleh menggunakan bahasa semula jadi (Bahasa Inggeris, Perancis, Jerman, dll.) untuk menerangkan gelagat yang dijangkakan bagi aplikasi anda. Behat menggunakan bahasa Gherkin untuk menerangkan kes ujian dan menyediakan sejumlah besar pemalam dan sambungan untuk membantu anda mengurus ujian anda.

Memasang Behat

Mula-mula, anda perlu memasang Behat dan kebergantungannya. Ini boleh dilakukan dengan menjalankan arahan berikut dalam terminal:

$ sudo apt-get install php-cgi php-mbstring
$ curl https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/local/bin/composer
$ composer require behat/behat --dev

Proses ini mungkin mengambil sedikit masa, jadi harap bersabar.

Pasang Mink

Mink ialah alat yang menyepadukan Behat dengan penyemak imbas web yang berbeza supaya anda boleh mensimulasikan gelagat pengguna dalam penyemak imbas. Anda boleh memasangnya melalui arahan berikut:

composer require behat/mink behat/mink-extension behat/mink-goutte-driver behat/mink-selenium2-driver --dev

Ini akan membolehkan anda berinteraksi dengan pelayar seperti Selenium atau Goutte.

Mengkonfigurasi Behat

Seterusnya, anda perlu mencipta fail bernama "behat.yml" untuk mengkonfigurasi Behat. Cipta fail baharu dalam akar projek anda dan salin kod berikut ke dalam fail:

default:
  extensions:
    BehatSymfony2Extension: ~
    BehatMinkExtension:
      base_url: http://localhost
      sessions:
        default:
          symfony2: ~
          goutte: ~
          selenium2:
            wd_host: "http://127.0.0.1:4444/wd/hub"

Fail ini akan mengkonfigurasi Behat dan memberitahunya cara menggunakan sambungan Mink.

Menulis Kes Ujian

Sekarang anda telah mengkonfigurasi Behat untuk CakePHP, anda boleh mula menulis kes ujian. Anda harus membuat direktori yang dipanggil "ciri" yang mengandungi fail Gherkin yang dipanggil "contoh.ciri". Fail anda sepatutnya kelihatan seperti ini:

Feature: 注册用户
    为了访问Web应用程序,我想注册一个新用户

Scenario: 注册一个新用户
    Given 我在登录页面
    When 我输入我的用户名和密码
    Then 我应该看到一个欢迎消息

Fail ini menggunakan sintaks khusus untuk menerangkan langkah-langkah kes ujian. Anda harus perhatikan bahawa ia adalah bahasa yang sangat semula jadi, yang merupakan salah satu idea teras Behat.

Apabila anda menjalankan Behat, ia akan membaca fail ini dan melakukan ujian untuk anda.

Jalankan Ujian

Untuk menjalankan ujian anda, anda boleh memasukkan arahan berikut dalam terminal:

vendor/bin/behat

Ini akan menjalankan ujian anda dan memberikan anda keputusan ujian .

Kesimpulan

Menguji kod anda dalam CakePHP agak mudah menggunakan Behat. Jika anda sudah biasa dengan Behat dan Mink, anda sepatutnya boleh mula menulis kes ujian dengan cepat. Secara keseluruhannya, Behat ialah alat yang sangat berguna yang boleh membantu anda menguji aplikasi anda dengan lebih baik dan memastikan kod anda kekal stabil dan betul semasa anda terus mengulang.

Atas ialah kandungan terperinci Bagaimana untuk menggunakan Behat dengan CakePHP?. 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