Wordpress - Cài Đặt PHPUnit Cho Wordpress
wordpress
13
PHPUnit
5
Testing
28
PHP
93
White

Hùng Phạm viết ngày 06/11/2019

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

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

Hùng Phạm

17 bài viết.
15 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Cùng một tác giả
White
7 2
CSS Sprites thật ra đã là một cái tên khá cũ rồi và mình viết bài viết này hy vọng nó sẽ hữu ích cho các anh em nào chưa bao giờ biết đến cái tên c...
Hùng Phạm viết 10 tháng trước
7 2
White
5 4
Cũng như hôm bữa ( cách đây có 6 tháng trước chứ nhiêu :smile_cat: ) mình có kể là mình đang ở Mã để làm việc. Bài viết cũ còn đây mời cả nhà vô xe...
Hùng Phạm viết 4 tháng trước
5 4
White
4 2
Webpack là một cái tên không quá mới nhưng mình nghĩ không ít lần các anh em đã nghe qua nó. Nhiệm vụ chính của Webpack trong hệ thống là dùng để đ...
Hùng Phạm viết 10 tháng trước
4 2
Bài viết liên quan
White
11 1
Reflection trong PHP Reflection đã được trình bày ở (Link). Ở đây mình nhắc lại một chút. Reflection là một bộ API được cung cấp từ PHP5 trở đi, r...
Vu Nhat Minh viết hơn 4 năm trước
11 1
White
6 0
1. Định nghĩa Một kế hoạch kiểm thử dự án phần mềm (test plan) là một tài liệu mô tả các mục tiêu, phạm vi, phương pháp tiếp cận, và tập trung vào...
Thiên Hoàng Minh Vũ viết gần 2 năm trước
6 0
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
17 bài viết.
15 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!