PHPUnit is a lightweight PHP testing framework. It is a complete port of the JUnit3 series version under PHP5 and is a member of the xUnit test framework family (they are all based on the design of pattern pioneer Kent Beck).
Unit testing is the foundation of several modern agile development methodologies, making PHPUnit a key tool for many large PHP projects. This tool can also be used by the Xdebug extension to generate code coverage reports, and can be integrated with phing to automate testing. Finally, it can be integrated with Selenium to complete large-scale automated integration testing.
Advantages
1. It is a verification behavior.
Every function in the program is tested to verify its correctness. It provides support for future development. Even in the later stages of development, we can easily add functions or change the program structure without worrying about destroying important things in the process. And it provides protection for code refactoring. In this way, we can make improvements to the program more freely.
2. It is a design behavior.
Writing unit tests will allow us to observe and think from the caller. In particular, writing tests first (test-first) forces us to design the program to be easy to call and testable, that is, it forces us to decouple the software.
3. It is an act of writing documents.
Unit testing is an invaluable document that shows how a function or class is used. This document is compilable, executable, and it remains up-to-date, always in sync with the code.
4. It is regressive.
Automated unit testing avoids regressions in the code. After the writing is completed, the test can be quickly run anytime and anywhere.
Practice
When to test?
The earlier the unit test is done, the better. How early should it be?
Extreme Programming (Extreme Programming, or XP for short) pays attention to TDD, that is, test-driven development, writing test code first and then developing it. In actual work, there is no need to overemphasize what comes first and what comes last. What matters is efficiency and comfort.
From experience, first write the framework of the product function, then write the test function, write test cases for the function of the product function, then write the code of the product function, run the test for each function point written, and add it at any time Test cases.
The so-called framework of writing product functions first refers to writing the empty implementation of the function first, and directly returning a suitable value if there is a return value. After the compilation is passed, the test code is written. At this time, the function name, parameter list, return The types should be determined, and the test code written is less likely to need to be modified in the future.
Unit testing is different from other tests. Unit testing can be regarded as part of the coding work and should be completed by programmers. In other words, the code that has passed the unit test is the completed code. Submit the product code The test code must also be submitted at the same time. The testing department can conduct a certain level of review.
Please be sure to read the official documentation: https://phpunit.de/manual/current/zh_cn/index.html.
The above is the detailed content of what is unit testing in php. For more information, please follow other related articles on the PHP Chinese website!