The smoke test should be a concept first proposed by Microsoft, which is closely related to the daily build that Microsoft has always advocated. Specifically, the smoke test is a simple test of the basic functions of the system after daily build. This test emphasizes the coverage rate of the function, rather than verifying the correctness of the function. From this point of view, it is very similar to the so-called "acceptance test. The difference is that the execution frequency is different from the tested version.
The reason for the smoke test is probably from the circuit board test. When the circuit board is ready, it will first be powered on for testing. If the Board is not in smoke for other tests, otherwise it will have to be done again. Similarly, if the smoke test fails, the build will be returned to the Development Team for correction. The version tested by the tester must pass the smoke test first.
The smoke test statement is said to be:
Just like producing a car, when a car is produced, it is first triggered to check whether the car can smoke. If yes, it proves that the car can start at least. Describes the completion of the most basic functions.
The smoke test is generally used for daily build. The build server first downloads the latestSource codeAnd then compile the unit test. After the unit test is run, compile the executable file. If the executable file can be run and the most basic functions can be executed, it is deemed that the smoke test is passed, the build server willProgramPackage it into an installation file and upload it to the internal website. early the next morning, the tester will receive an email from the build server asking if the build was successful last night. If the build is successful, the tester tests the relevant functions. The completion of all these functions is generally completed by writing scripts. Currently, common scripts include TCL, Perl, Python, and batch processing with weak functions. These can be used to build the system on a daily basis.
To put it simply, it is to ensure that the system can run, so as not to make the test half happen suddenly and cause service interruption. The goal is to pass the most basic test first. If there is a problem with the most basic test, we will directly go back to the Development Department to reduce the waste of time on the test department.