Như tiêu đề mình đã đề cập, bài viết này sẽ hướng dẫn các anh em cách để integrate PHPUnit cho WordPress.
Các anh em có thể truy cập bài viết gốc của mình để xem thêm chi tiết nhé:
https://hungphamdevweb.com/wordpress-cai-dat-phpunit-cho-wordpress.html
Lý do chúng ta cần thiết lập Unit Test cho WordPress:
- Kiểm tra độ đúng đắn của Plugin hoặc Function mà chúng ta viết thông qua Testing.
- Có thể áp dụng TDD (Test Driven Development) để có thể viết Function tốt hơn.
- Biết viết Unit Test thì lương sẽ cao hơn :laughing: :laughing: :laughing:.
Lưu ý: Bài viết này được viết dựa trên hệ điều hành MacOS do đó cũng sẽ hoạt động tốt trên Linux, còn những hệ điều hành khác thì mình không biết nha.
Dưới đây là một vài bước để cài đặt PHPUnit cho WordPress:
Cài đặt PHPUnit
Để có thể sử dụng được PHPUnit, đầu tiên chúng ta cần phải cài đặt nó trước cái đã. Có rất nhiều option nhưng ở đây mình chọn cài đặt chúng bằng Wget
thông qua một số lệnh như sau:
wget https://phar.phpunit.de/phpunit-7.5.9.phar chmod +x phpunit-7.5.9.phar sudo mv phpunit-7.5.9.phar /usr/local/bin/phpunit
Cài đặt WP-CLI
WP-CLI
(WordPress Command-line Interface) là tổ hợp các câu lệnh dùng để tương tác với WordPress. Ngoài ra WP-CLI
có rất nhiều cách câu lệnh mà các anh em không thể làm được trong Admin Dashboard
Ví dụ:
wp transient delete --all
Cài đặt WP-CLI thông qua Homebrew
bằng câu lệnh bên dưới hoặc các anh em có thể tham khảo thêm ở đây để biết thêm một số cách cài đặt khác nhé.
brew install wp-cli
cài xong thì nó sẽ giống như vầy
Cài đặt PHPUnit cho WordPress
Sau khi hoàn thành cả hai bước trên, tiếp theo cũng ta sẽ config PHPUnit cho WordPress thông qua WP-CLI bằng command bên dưới:
wp scaffold plugin-tests tên-plugin
Ở command bên trên các anh em chỉ cần thay tên-plugin
bằng tên thư mục Plugin của mình thôi nhé.
Lưu ý: là nhớ chạy lệnh trên tại vị trí floder của Plugin nha.
sau khi chạy xong nó sẽ tạo ra thư mục giống như trên nhé
Tiếp đến là cấu hình một database riêng để test cho Plugin của mình. Các anh em chạy command bên dưới ngay tại thư mục Plugin mình luôn nhé.
bash bin/install-wp-tests.sh wordpress_test root password localhost latest
xong nó sẽ giống như vầy
Viết Unit Test đầu tiên
Đầu tiên anh em cần remove dòng code bên dưới trong file phpunit.xml.dist
đi nha. Dòng tô vàng bên dưới nhé.
Tiếp đến mình sẽ thử viết một function để test trong file test-sample.php
với nội dung như sau:
public function test_sample() { $string = 'Unit tests are sweet'; $this->assertEquals( 'Unit tests are sweet', $string ); }
Sau đó chạy thử command phpunit
và tận hưởng kết quả như hình bên dưới nhé:
Bài viết tới đây là hết rồi. Mọi thắc mắc vui lòng để lại bình luận bên dưới nhé.
Video hướng dẫn sẽ cập nhật vào thứ 4 tuần này.
Hẹn gặp lại các anh em trong một bài viết sắp tới, mình sẽ hướng dẫn cơ bản cách để viết Unit Test trên WordPress nhé. ahihi