当前位置:网站首页>[software testing] 03 -- overview of software testing

[software testing] 03 -- overview of software testing

2022-07-05 07:05:00 Derived planet

Software Testing Overview

  1. The purpose of software testing

   Combined with software development 、 The purpose of software testing can be summarized as the following points .

  (1) For software development , Software testing helps developers find problems in the development process by finding problems and defects , Including the mode of software development 、 Tools 、 Problems and deficiencies in technology , Prevent the next defect .

  (2) For software testing , Use the least manpower 、 material resources 、 Time to find hidden defects in the software , Ensure the quality of the software , It also accumulates rich experience for software testing in the future .

  (3) For customer needs , Software testing can verify whether the software meets the needs of customers , Evaluate and measure software quality , Provide a strong basis for customers to review software .

  2. Classification of software testing

  (1) Classification according to test phase

   According to the testing phase, software testing can be divided into unit testing 、 Smoke testing 、 Integration testing 、 System test and acceptance test . This classification is consistent with the software development process , It is to check whether all stages of software development meet the requirements .

  a. unit testing

   Unit testing is the first step in software development , The purpose is to verify whether the software unit meets the software requirements and design . Unit tests are mostly self-test conducted by developers .

  b. Smoke testing

   Smoke test was originally obtained from circuit board test , When the circuit board is ready , First of all, it will power up the test , If the circuit board does not smoke, carry out other tests , Otherwise, it must be redesigned and tested again . Later, this testing concept was introduced into software testing . In software testing , Smoke test refers to the test after the software build version is established , Test the basic function of the system , This test focuses on verifying the main functions of the program , Without in-depth testing of specific functions . If the test fails , It needs to be returned to the developer for correction ; If the test passes, carry out other tests . therefore , Smoke test is the most basic test for the newly built software .

  c. Integration testing

   The integration test is the test after the smoke test , It is the combination of tested software units to test the interface between them , Used to verify whether the software meets the design requirements .

  d. The system test

   System testing is to run the tested software in the actual environment , And with the components of other systems ( Such as a database 、 Hardware and operators, etc ) Tests combined .

  e. The acceptance test

   Acceptance test is mainly to verify the software product description , Test the software product line by line and word by word according to the description of the manual , Ensure that it meets the customer's requirements .

  (2) Classified according to test technology

   According to the testing technology used, software testing can be divided into black box testing and white box testing .

  a. Black box testing

   Black box testing is to put the software ( Program ) As a black box with input and output , It treats the program as a mapping from input domain to output domain , As long as the input data can output the expected results , Don't worry about how the program is implemented internally , Pictured 1 Shown .
 Insert picture description here

  b. White box testing

   White box test is also called transparent box test , It means that testers understand the logical structure of software programs 、 Path and running process , At testing time , The results are obtained according to the execution path of the program . White box testing is to put software ( Program ) As a transparent box , The tester clearly knows every step from input to output , Pictured 2 Shown .
 Insert picture description here

   Compared with black box testing , White box testing requires more testers , It requires testers to have certain programming ability , And be familiar with various scripting languages . But in software companies , Black box testing and white box testing are not clearly defined , When testing a software, it is often a combination of black box testing and white box testing to test the software completely and comprehensively .

  (3) Classified according to software quality characteristics

   According to software quality characteristics, software testing can be divided into functional testing and performance testing .

  a. A functional test

   Function test is to test whether the function of software meets the needs of customers , Including accuracy 、 Ease of use 、 Suitability 、 Interoperability, etc .

  b. Performance testing

   Performance testing is to test whether the performance of software meets the needs of customers , Performance tests include load tests 、 Pressure test 、 Compatibility test 、 Portability test and robustness test .

  (4) Classify according to the degree of Automation

   According to the degree of automation, software testing can be divided into manual testing and automated testing .

  a. Manual testing

   Manual testing is that testers execute code one by one to complete the testing work . Manual testing is time-consuming and laborious , And if the tester is tired , It is difficult to guarantee the effect of the test .

  b. automated testing

   Automated testing is done with the help of scripts 、 Complete the corresponding test work with automatic test tools , It also requires human participation , But it can script the test code or process to be executed , Execute the script to complete the whole test work .

  (5) Classify according to test type

   There are many types of software testing , Including interface class test 、 A functional test 、 Performance testing 、 Safety test 、 Document testing, etc , The function test and performance test have been introduced earlier , The following mainly introduces several other tests .

  a. Interface class test

   Interface test is to verify whether the software interface meets the needs of customers , Including whether the interface layout is beautiful 、 Whether the buttons are complete .

  b. Safety test

   Security test is to test how the software handles the attack or malicious destruction of unauthorized internal or external users , Whether the security of software and data can be guaranteed .

  c. Document the test

   Document testing for requirements analysis 、 software design 、 User's Manual 、 Installation manual , Mainly verify whether there is any difference between the document description and the actual software .

  (6) Other categories

   There are also some software tests that cannot be specifically classified , But these tests are often carried out in the testing industry , Such as α test 、β test 、 Regression tests, etc , The details are as follows .

  a.α test

  α Testing refers to testing the initial version of the software . The initial version of the software is generally not released , Before going online , With the assistance of developers and testers or users . The tester shall record the errors and problems in use , The whole test process is controllable .

  b.β test

  β Testing refers to testing the software version after launching , At this time, the software has been released online , However, there may be minor errors in the released version Bug, Errors and problems found by users during use shall be recorded , Then feed back to the developer for repair .

   tip : Divide software testing according to software development version cycle

   It is divided according to the software development version cycle , Software tests can be divided into preview versions Preview test 、 Internal test version Alpha test 、 Public beta version Beta test 、 Candidate version Release test . After these tests are completed, the product can be officially launched .

  c. regression testing

   When the tester finds the defect , The defect will be submitted to the developer , Developers modify the program , After the modification , The tester will retest the modified program , Confirm that the original defects have been eliminated and no new defects have been introduced , This retesting process is called regression testing . Regression testing is a very important part of software testing , Multiple regression tests are performed at all stages of software development .

  d. Random test

   Random testing has no test cases 、 Checklist 、 Testing of scripts or instructions , It mainly checks the function and performance of the software according to the experience of testers . Random testing is an important supplementary means to execute test cases according to the test case specification , It is an effective way and process to ensure the integrity of test coverage .

原网站

版权声明
本文为[Derived planet]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/186/202207050639187289.html