Wordpress - Cài Đặt PHPUnit Cho Wordpress

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

alt textcà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.

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

alt textxong 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é.

alt text

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

alt text

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