Phpunit trực tuyến
Bài viết này là bài đầu tiên trong loạt bài tập trung vào `Unit Testing`, một phương pháp kiểm thử nổi tiếng. Tôi sẽ sử dụng `PHPUnit` làm công cụ kiểm tra chính cho PHP Unit Testing. Khi bạn đã nắm được những điều cơ bản, bắt đầu với PHPUnit không quá khó Show
PHPUnit là một khung kiểm tra đơn vị cho ngôn ngữ lập trình PHP. Đây là một ví dụ về thiết kế xUnit cho các hệ thống thử nghiệm đơn vị bắt đầu với SUnit và trở nên phổ biến với JUnit Ngay cả một dự án phát triển phần mềm nhỏ cũng thường mất hàng giờ làm việc chăm chỉ. Trong quá trình phát triển, một số lỗi và sự cố lớn và nhỏ len lỏi trong cấu trúc và mã của ứng dụng. Các nhà phát triển thường cố gắng tìm ra các lỗi trong quá trình phát triển Vấn đề là không có cách chắc chắn nào để đảm bảo rằng tất cả các lỗi đã được xử lý trong mã cuối cùng Một khía cạnh quan trọng khác là khả năng xuất hiện thêm các lỗi khi các lỗi hiện có được sửa. Để giải quyết những vấn đề này, kiểm thử và QA là những thành phần không thể thiếu của quy trình phát triển phần mềm
Phát triển phần mềm cẩn thận đảm bảo rằng một số phương pháp thử nghiệm và QA được xây dựng trong quá trình phát triển ngay từ đầu. Kết quả của quá trình phát triển như vậy là một mã mạnh mẽ, dễ bảo trì và mở rộng hơn nữa Bạn cũng có thể thích. Tích hợp liên tục PHP với Travis CI Kiểm tra đơn vị là gì?Từ `Unit` dùng để chỉ một khối mã, phương thức hoặc một lớp riêng lẻ hoặc độc lập. Kiểm thử đơn vị là một quy trình kiểm thử phần mềm trong đó các khối mã được kiểm tra để xem liệu kết quả được tạo ra có phù hợp với mong đợi hay không. Các đơn vị được kiểm tra bằng cách viết một trường hợp thử nghiệm duy nhất Kiểm tra đơn vị nói chung là tự động nhưng có thể được thực hiện thủ công. Tôi đã thiết kế một thuật toán ngắn để xác định trực quan cách hoạt động của bài kiểm tra đơn vị Tại sao phải kiểm tra đơn vị?Test Driven Development là một phương pháp mà bạn viết bài kiểm tra trước và viết mã sau để vượt qua bài kiểm tra. Cách tiếp cận này đảm bảo rằng số lượng lỗi phải được giải quyết trong khi phát triển. Nhà phát triển viết cẩn thận các trường hợp thử nghiệm trước rồi mới viết mã, vì cách làm này cho phép anh ta nhanh chóng tìm ra các lỗi tiềm ẩn
Phiên bản hỗ trợ PHPUnitHiện tại, PHPUnit có nhiều phiên bản được hỗ trợ và có một số cập nhật lớn do các phiên bản PHP mới nhất được phát hành. Vì vậy, nó hoàn toàn tương thích với các phiên bản hiện tại và sắp tới của PHP. Bảng tương thích được hiển thị bên dưới Phiên bản chínhKhả năng tương thíchPHPPhát hành ban đầuHỗ trợPHPUnit 8PHP 7. 2, PHP7. 3, PHP7. 4 Ngày 1 tháng 2 năm 2019 Hỗ trợ kết thúc vào ngày 5 tháng 2 năm 2021 PHPUnit 7 PHP 7. 1, PHP7. 2, PHP7. 3 2 Tháng 2, 2018 Hỗ trợ kết thúc vào 7 Tháng 2, 2020 PHPUnit 6 PHP 7. 0, PHP7. 1, PHP7. 2 3 Tháng 2, 2017 Hỗ trợ kết thúc vào 1 Tháng 2, 2019 PHPUnit 5PHP 5. 6, PHP7. 0, PHP7. 1 Ngày 2 tháng 10 năm 2015 Hỗ trợ đã kết thúc vào ngày 2 tháng 2 năm 2018Giới thiệu PHPUnit 7PHPUnit 7 được phát hành vào ngày 2 tháng 2 năm 2018 đi kèm với các tính năng thú vị, thay đổi và loại bỏ các tính năng thú vị Ghi chú. PHPUnit 7 yêu cầu PHP 7. 1 hoặc phiên bản mới hơn PHPUnit giải quyết các vấn đề tương thích trước đâyPhiên bản mới của thư viện giải quyết một số vấn đề tương thích gặp phải trong các phiên bản trước của PHPUnit. Để thảo luận chi tiết về chủ đề này, vui lòng xem tài liệu chính thức. Tôi cũng khuyên bạn nên xem nhật ký thay đổi của thư viện Làm cách nào để cài đặt PHPUnit?Để giải thích kiểm tra đơn vị PHP, tôi sẽ sử dụng thư viện PHPUnit, được phát triển bởi `Sebastian Burgmen` Trước khi sử dụng thư viện, bạn cần thiết lập một môi trường phù hợp. Nếu bạn đang thực hiện thử nghiệm đơn vị trong môi trường cục bộ, bạn phải cài đặt XAMPP, Trình soạn thảo, Bật Xdebug và cuối cùng là cài đặt PHPUnit Tuy nhiên, nhờ Cloudways PHP Hosting, bạn không cần cài đặt bất cứ thứ gì ngoại trừ PHPUnit. Dễ dàng kích hoạt Xdebug chỉ bằng một cú nhấp chuột trong tab `Advance` trong Quản lý máy chủ Có liên quan. Cách lưu trữ PHP trên DigitalOcean Đăng nhập vào thiết bị đầu cuối SSH bằng cách sử dụng Thông tin xác thực chính và chuyển đến thư mục ứng dụng bằng cách sử dụng lệnh $ cd applications/qmsfumgabd/public_html/ Để cài đặt PHPUnit từ `Composer`, hãy chạy lệnh sau trong thiết bị đầu cuối SSH public_html$ composer require --dev phpunit/phpunit ^7 Để cài đặt từ nhà soạn nhạc. json, thêm các dòng mã sau { "require-dev": { "phpunit/phpunit": "^7" }, "autoload": { "psr-0": { "UnitTestFiles": "" } } } Bạn cũng có thể cài đặt PHPUnit theo cách thủ công bằng cách tải xuống phiên bản PHPUnit mới nhất từ Trang web chính thức Làm cách nào để kiểm tra phiên bản PHP?Nếu bạn cần kiểm tra Phiên bản PHP của mình, hãy nhập lệnh sau trên SSH Terminal public_html$ php -v Cấu trúc thư mụcTrước khi bắt đầu quá trình kiểm tra bằng PHPUnit, cần có cấu trúc thư mục phù hợp cho các tệp được kiểm tra. Hiện tại, cấu trúc thư mục sẽ trông như thế này |--vendor |--composer.json |--composer.lock |--index.php Tôi sẽ tạo một thư mục mới cho các tệp được kiểm tra. Tạo một thư mục `UnitTestFiles`. Trong thư mục này, hãy tạo một thư mục con `Test`. Tạo một tệp mới `phpunit. xml` trong thư mục con này và thêm đoạn mã sau vào nó /UnitTestFiles/Test/ `colors=”true”` sẽ hiển thị kết quả bằng các màu được đánh dấu và `. /UnitTestFiles/Test/` sẽ hỏi PHPUnit về vị trí của các tệp sẽ được kiểm tra Bây giờ cấu trúc thư mục sẽ giống như |--vendor |--UnitTestFiles/Test |--phpunit.xml |--composer.json |--composer.lock |--index.php Tất cả các tệp dự án sẽ nằm trong thư mục gốc, trong khi các tệp cần kiểm tra sẽ nằm trong thư mục Kiểm tra Bạn cũng có thể thích. Giới thiệu về Laravel Dusk. Thử nghiệm ứng dụng Todo Quy ước cơ bản để viết Unit Test CaseSau đây là một số quy ước cơ bản và các bước để viết bài kiểm tra với PHPUnit
Đây là những quy tắc cơ bản chính cho khung kiểm tra đơn vị PHP. Tất cả các cấu hình và cài đặt cần thiết đều được thiết lập. Đã đến lúc viết test case đầu tiên Viết Unit Test Case đầu tiên trong PHPBây giờ tôi sẽ bắt đầu với một trường hợp thử nghiệm rất đơn giản Tạo một tệp FirstTest. php trong UnitTestFiles/Kiểm tra. Thêm đoạn mã sau vào nó ?php namespace UnitTestFiles\Test; use PHPUnit\Framework\TestCase; class FirstTest extends TestCase { public function testTrueAssetsToTrue() { $condition = true; $this->assertTrue($condition); } } ?> Đây là bài kiểm tra rất cơ bản. Trong dòng đầu tiên, tôi đã đề cập đến không gian tên nơi đặt các tệp thử nghiệm Trong dòng thứ hai, tôi đã khởi tạo khung kiểm tra PHPUnit. FirstTest là lớp kiểm tra mở rộng Testcase. Tôi đã khai báo một phương thức `testTrueCheck()` với tiền tố test Trong phương thức, tôi chỉ cần khai báo một biến `$condition = true`; . Lưu tệp và chạy nó qua thiết bị đầu cuối SSH bằng cách sử dụng lệnh sau Đây là kết quả của bài kiểm tra đơn vị đầu tiên của chúng tôi. Để thực hiện một kiểm tra khác, chuyển false cho biến `$condition`. Kết quả hiện tại `$condition = true` được thay đổi thành `$condition = false;` Chạy lệnh kiểm tra trong thiết bị đầu cuối SSH Đường màu đỏ này cho biết thử nghiệm không thành công vì `assertTrue` báo cáo lỗi và xác định $condition là sai Hãy xem một ví dụ khác trong đó nhà phát triển đã tạo mã để nhập địa chỉ email và xác thực nó cho trường hợp sử dụng có thể có thể là regex hoặc cho các quy tắc xác thực email khác ________số 8_______Tôi đã tạo một lớp có tên là Email để lưu giá trị email trong biến riêng tư và chuyển nó tới hàm tạo. Hàm tạo có phương thức ensureIsValidEmail() để kiểm tra thêm email bằng cách sử dụng FILTER_VALIDATE_EMAIL và đưa ra một ngoại lệ nếu không hợp lệ Bây giờ trong thư mục UnitTestFiles/Test, hãy tạo một tệp mới có tên EmailTest. php và thêm mã kiểm tra sau assertInstanceOf( Email::class, Email::fromString('[email protected]') ); } public function testCannotBeCreatedFromInvalidEmailAddress(): void { $this->expectException(InvalidArgumentException::class); Email::fromString('invalid'); } public function testCanBeUsedAsString(): void { $this->assertEquals( '[email protected]', Email::fromString('[email protected]') ); } } Ở đây tôi đã sử dụng phương thức assertInstanceOf() báo cáo lỗi được xác định bởi $message nếu $actual không phải là một phiên bản của $expected Vì vậy, tôi đã chuyển hai đối số, lớp email thực tế và địa chỉ email dự kiến. Thử nghiệm thứ hai sẽ lấy giá trị đầu vào và đưa ra một ngoại lệ không hợp lệ nếu giá trị email không được xác thực. Bài kiểm tra thứ ba lấy giá trị đầu vào và coi nó là một chuỗi Hãy chạy thử nghiệm trên trình soạn thảo bằng cách chạy lệnh sau public_html$ composer require --dev phpunit/phpunit ^70 Phần kết luậnBài viết này giải thích một thiết lập cơ bản giúp bạn bắt đầu với PHPUnit để kiểm tra đơn vị PHP. Tôi muốn đề cập đến một số thay đổi trong phiên bản mới nhất của PHPUnit. Trong các phiên bản trước, lớp mở rộng với `PHPUnit_Framework_TestCase`. Trong phiên bản mới nhất, nó chỉ mở rộng với `TestCase`. Trong phần thứ hai của loạt bài này, tôi sẽ giải thích một số chi tiết về Assertions, nhà cung cấp dữ liệu và các tính năng khác Nếu có thắc mắc hoặc muốn đóng góp thảo luận, vui lòng để lại bình luận Q. Làm cách nào để chạy hoặc gỡ lỗi kiểm tra PHPUnit?Để chạy thử nghiệm đơn vị,
Để gỡ lỗi Trường hợp kiểm tra PHPUnit,
Đánh giá của khách hàng tại “Dịch vụ lưu trữ trên nền tảng đám mây có một trong những dịch vụ khách hàng tốt nhất và tốc độ lưu trữ”Sanjit C [Nhà phát triển trang web] Inshal AliInshal là Nhà tiếp thị nội dung tại Cloudways. Với nền tảng về khoa học máy tính, kỹ năng nội dung và rất nhiều sáng tạo, anh ấy đã giúp doanh nghiệp vươn tới bầu trời và vượt xa thông qua nội dung nói ngôn ngữ của khách hàng của họ. Ngoài công việc, bạn sẽ thấy anh ấy chủ yếu trong một số trò chơi trực tuyến hoặc trên sân bóng PHPUnit dùng để làm gì?PHPUnit là gì? . PHPUnit là một phiên bản của kiến trúc xUnit dành cho các khung kiểm tra đơn vị. Nó rất dễ cài đặt và bắt đầu sử dụng. unit testing in PHP with PHPUnit, a programmer-oriented testing framework for PHP. PHPUnit is an instance of the xUnit architecture for unit testing frameworks. It is very easy to install and get started with.
PHPUnit có phải là một khuôn khổ không?PHPUnit là khung thử nghiệm dành cho lập trình viên dành cho PHP . Nó là một ví dụ về kiến trúc xUnit cho các khung kiểm tra đơn vị. PHPUnit 9 là phiên bản ổn định hiện tại. PHPUnit 10 hiện đang được phát triển.
Làm cách nào để thiết lập PHPUnit?Tải xuống và cài đặt phpunit. . nhà soạn nhạc bên trong. json, hãy thêm bản ghi phụ thuộc phpunit/phpunit vào phần yêu cầu hoặc yêu cầu-dev. Nhấn Ctrl + Space để hoàn thành mã cho tên gói và phiên bản làm một điều trong số sau đây. Nhấp vào liên kết phím tắt Cài đặt trên đầu bảng chỉnh sửa Phiên bản mới nhất hiện tại của PHPUnit là gì?Phiên bản dành cho PHPUnit 9. 5 . Cập nhật vào ngày 24 tháng 12 năm 2022. |