当前位置:网站首页>Overview of testing theory
Overview of testing theory
2022-07-03 10:57:00 【Software testing Intelligence Agency】
One 、 Fundamentals of testing
1、 What is a test ?
The process of figuring out the difference between the actual function and demand of the product .
2、 The purpose of software testing :
The fundamental purpose is to test whether the product meets the needs of users . besides , It can be divided into three levels :
(1) prove : Prove that the software is available
(2) testing : Find a flaw (BUG) And some optimizable items .
(3) The prevention of : Prevention of defects , It can be tested as soon as possible , To find developers' mistakes or omissions , And analyze the existing bug, Avoid the loss caused by mistakes .
3、 What is a defect ?
The performance that does not meet the product expectations caused by errors in the software , Defect related :
(1) error : Human behavior that produces incorrect results , Such as code error 、 Document error .
(2) defects (bug、defect): Unexpected performance in software or documentation , It is a defect caused by error , Defects are concrete manifestations of errors .
(3) invalid : The defect triggering function cannot be used , I.e. failure .
(4) fault : The defect is in the formal environment ( Production environment ) It's exposed under the sun , Cause more serious consequences , Software failure .
Ps: Production environment / The online environment / Formal environment : That is, the real environment that users are using
Pre release environment : The environment in which the software is regression tested before it goes online , Big regression test
Test environment : The environment used by testers , Used to find defects ( Execute use cases 、 Small regression test )
development environment : The environment used by developers , Used to debug code 、 Development self testing
4、 Software life cycle :
brief introduction : In software engineering , By defining the software lifecycle , Divide the whole cycle into several stages , Each stage is specified ( What standards are used 、 What norms 、 What craft ) The deliverables that must be completed , To ensure the quality of products .
Life cycle based on software waterfall model :
(1) plan : Generally, the project manager completes this stage , The output is 《 Project plan 》, Its content is to establish project objectives 、 research 、 communicate , Assess feasibility 、 resources 、 cost 、 speed of progress 、 Income, etc ( Generally from what、when、who Three considerations ).
(2) Demand analysis : By the demander ( project manager 、 Demand analyst 、 The product manager ) To complete , Output 《 Software requirements specifications 》, Also known as SRS, Its content is to solve “what” problem , That is, analyze specific needs ( Show requirements 、 Implicit demand ), Gradually refine , And clearly defined .
(3) Design : By the architect , Output 《 Outline design 》, namely HLD;《 Detailed design 》, namely LLD, Its content is to solve “How” problem , For the system - Subsystem - modular - Function is designed layer by layer .
(4) code : By the developer , Output runnable programs and some code .
(5) test : It is done by testers , Output 《 Test report 》, There are also periods. 《 test plan 》、《 Test plan 》、《 The test case 》、《 Defect report 》 Equal output , Through careful analysis to detect whether the software has defects .
(6) Operation and maintenance : The operation and maintenance personnel 、 Technical support to complete , Upgrade and maintain the product after it goes online 、 Installation and deployment 、 Online troubleshooting, etc
5、 Common R & D organization structure :
(1) Functional :① Product department :UI The designer 、 The product manager ...② Development Department : Front-end development engineer 、 Back end Development Engineer ...③ Testing department : Test Engineer 、 Test Development Engineer ...④ Quality department :QA( Quality assurance personnel )、CMO( Configuration administrator )、 Project manager ...
(2) Project type :① product 1 Group ( Ministry ): project manager 、 Demand analyst 、 Development 、 test ...② product 2 Group ( Ministry ): project manager 、 Demand analyst 、 Development 、 test ...③.....
(3) Matrix : A mixture of the above two .
6、 Common R & D process models :
(1) Waterfall model : According to the plan - Demand analysis - Design - code - test - The operation and maintenance process carries out product research and development .
characteristic : Serial flow , The test will not intervene until later , A test engineer can be responsible for multiple projects , The more perfect the early stage is , The lower the cost of later modifications , The higher the delivery quality .
shortcoming : The risk will not appear until later , Only in the late stage of the project can we see the products , Poor adaptability to demand changes .
Suitable for low complexity 、 Projects with stable demand , Usually, the cycle is short .
(2) rapid prototyping : Before developing real systems , Build a prototype , On the basis of this prototype , Gradually complete the development of the whole system .
advantage : Overcome the shortcomings of waterfall model , You can see the prototype of the product in the early stage , Reduce the risk of unclear demand .
shortcoming : After constant revision , It may lead to low product quality .
Suitable for short cycle 、 Needs are clear 、 Projects that need to see product prototypes as soon as possible .
(3) Incremental model : Also known as a planned product improvement model , It starts with a given set of requirements , Implement development activities by constructing a series of executable intermediate versions . The first version includes some requirements , The next version includes more requirements , And so on , Until the system is complete . Every intermediate version performs the necessary process 、 Activities and tasks . The biggest feature of incremental model is to modularize and componentize the software system to be developed .
advantage :
① Modularize the software system to be developed , Software products can be submitted in batches , So that users can keep abreast of the progress of software projects .
② Developing with components as a unit reduces the risk of software development . Errors in a development cycle will not affect the whole software system .
③ Flexible development sequence . Developers can prioritize the implementation order of components , First complete the core components with stable requirements . When the priority of a component changes , It can also adjust the implementation order in time .
shortcoming : If the model to be developed cannot be modularized , Then using incremental model will bring a lot of trouble to development .
Fit can be modularized 、 It can be delivered in batches 、 Developers are not familiar with the application field , It is difficult to carry out one-time system development 、 Project management personnel grasp the overall level of higher software
(4) Spiral model : Adopt a cyclical approach to system development , The model is rapid prototyping , Centered on evolutionary development , Use the waterfall model method at each project stage . Each cycle of this model includes the definition of requirements 、 risk analysis 、 Engineering realization and review 4 Stages , From here 4 Iterations in stages . Every iteration of the software development process , Software development goes to another level .
advantage :① It can be delivered several times .② In the early stage, we can see the prototype of the product .③ Early risk exposure , It is easy to control risks .④ Strong adaptability to demand changes
shortcoming : The R & D cycle is too long , The development cost is large
Suitable for high complexity 、 Cycle is long 、 Projects whose requirements may change
(5) Fountain model : It is mainly used for software development projects using object technology . The model considers that the stages of the bottom-up cycle of software development process are iterative and seamless . Some part of the software is often repeated many times , Related objects add progressive software components in each iteration . No gap means that there is no obvious boundary between activities .
advantage : There is no obvious boundary between the stages , Developers can synchronize , Improve the efficiency of software development , Save time
shortcoming : Because the fountain model overlaps in each development stage , Therefore, a large number of developers are needed in the development process , Therefore, it is not conducive to project management . In addition, this model requires strict document management , Make the audit more difficult , Especially in the face of the possibility of adding all kinds of information at any time 、 Demand and information .
7、 Testing process :
(1) The four stages of testing :
Ⅰ、 Unit test phase (UT,Unit Test): For the most basic unit of software ( function 、 class ) Test of .
Test basis : Detailed design specification (LLD).
Test object : function 、 class
The test point :① Function code and LLD Whether it is consistent in .② Whether the function implementation is correct .③ Whether the internal logic implementation of the function is correct .
The test method : White box testing ( Do not pay attention to external features , Only pay attention to the internal implementation logic )
Evaluation criteria for test integrity : Logical coverage ( Statement override 、 Determine coverage 、 Path coverage )
Executive : Developers or testers .
Ⅱ、 Integration testing phase (IT,Integration Test): Each unit to be tested 、 modular 、 Subsystem assembly . Check whether the data transmission between them is correct , Also called assembly testing ( The joint test ).
Test basis : Outline design specification (HLD).
Test object : modular 、 Interface
The test point :① Check the module code and HLD Whether it is consistent in .② Whether the mutual calls between functions are correct .③ Whether the module function is correct .
The test method : Grey box testing ( White box + Black box ).
Evaluation criteria for test integrity : Interface coverage .
Executive : Developers or testers .
Ⅲ、 System test phase (ST,System Test): Taking the integrated software system as an element and combining it with other software and hardware to do comprehensive testing is called system testing
Test basis : Requirements specifications (SRS).
Test object : The whole software system
The test point : Check whether the software is consistent with SRS Agreement , A functional test 、 Performance testing 、 Security testing 、 Compatibility testing 、 Interface tests 、 Reliability test, etc
The test method : Black box testing ( Don't care about internal logic , Only care about external characteristics ).
Evaluation criteria for test integrity : Demand coverage .
Executive : Testers .
Ⅳ、 The acceptance test (AT,Acceptation Test): Generally, it refers to the test participated by the customer ( Party a ; Party A entrusts a third party ; Party A entrusts Party B ; Potential users );
Test basis : Work assignment 、 Original requirements 、 User manual, etc .
Test object : The whole software system
The test point : Check whether the function of the software is consistent with the user's requirements
The test method : Black box testing ( Don't care about internal logic , Only care about external characteristics ).
classification :① Formal acceptance test : By a third-party evaluation organization .
② User acceptance test : Tests performed by users , It is divided into :
α test : Under control ( Specific personnel 、 Specific circumstances 、 Specific operations ), Such as in-game test .
β test : Uncontrolled , Such as the game beta
(2) Four activities in the test phase :
Ⅰ、 test plan : By the test manager ( Test team leader ) Test scope 、 Time schedule 、 Assignment of personnel division , Output 《 test plan 》.
Ⅱ、 Test design : Senior Test Engineer 、 The test engineer selects the test method 、 Testing tools 、 Test strategy, etc , Output 《 Test plan 》.
Ⅲ、 Test implementation : By the test engineer , The work includes : Write test cases ( Guiding documents for test engineers when conducting tests )、 Test procedures ( Description document of use case execution sequence )、 The test script , Design test data ( Data to be entered during the test 、 Documents, etc. ).
Ⅳ、 The test execution : By the test engineer . The work content includes : Set up the test environment 、 Prepare test data 、 Execute test case 、 Record the execution result of the use case 、 Submit defect report 、 Track defects for regression testing 、 Write test report 、 Test summary, etc .
(3) regression testing : Test what has been tested again .
Ⅰ、 Purpose :① Verify whether the defect is repaired .② Verify whether new defects are introduced .
Ⅱ、 Regression testing strategy :
① Selective regression :
a、 Cover modification method : Where you modify it, you can regression test it , It is applicable to the repair content that has no impact on other modules .
b、 The influence of the surrounding law : Repair for complex modules , Considering the impact on other modules , Regression testing will test the repair module and its impact module .
c、 Target achievement method : Select the content that needs regression test according to certain standards . Such as :
1) Use cases that find defects need to be re executed .
2) The use cases of functional modules related to the code modified by the developer need to be re executed .
3) Before the official release of the system , Choose the one with higher severity BUG Do regression testing .
4) Before the official release of the system , Select the core module 1、2 Level use cases for regression testing .
② Complete regression : Re execute all use cases . Heavy workload , Generally, it is rarely used , Or use automated testing .
(4) test model :
Ⅰ、V Model : The essence is consistent with the waterfall model .
Ⅱ、 double V Model (W Model ):
(5) The test method :
Ⅰ、 According to different test concerns , It is divided into :
① White box testing : Only pay attention to the internal implementation details , Do not pay attention to external characteristics , Because it is equivalent to a transparent box , You can see the internal operation logic , Sometimes called transparent box test . It is mainly used in the unit test stage .
② Black box testing : Only focus on external functional characteristics , Don't pay attention to internal implementation details , Equivalent to a black box , Ignore the operation principle . Mainly used in the system testing stage .
③ Grey box testing : Both of the above . It is generally used in the integration test stage .
Ⅱ、 According to whether to run the tested object ( The tested object generally refers to all products in the process of software development ), It is divided into :
① The static test : Do not test the tested object . There are manual static tests 、 Automated static testing .
② Dynamic testing : Run the tested object to test . Functional test 、 Performance testing 、 Statement coverage test .
Ⅲ、 Depending on the performer . It is divided into :
① Manual testing
② automated testing : Increase of efficiency , But it can't improve the test effect ( Do not have divergent thinking ), There are limitations , For example, when the interface elements change 、 When the interaction of interface elements changes , The script will fail , Not suitable for the first test 、 Tests with unstable functions , You can only determine if there is a problem with the software , Instead of finding problems .
Basic principles of using automated testing : High repeatability 、 When the interface rarely changes , Smoke test 、 Regression tests, etc .
Two 、 Software quality
1、 What is software quality ?
It refers to the degree to which the physical characteristics of the software meet the needs of users .
The physical characteristics of software : Software quality model ( Here's how )
Satisfaction : Three levels of software quality :① Meet the requirements and specifications (SRS).② Meet user display requirements ( Clearly stated goals by the user ).**③ Meet the actual needs of users ( Meet the requirements of users and implicit requirements that are not clearly stated ).
2、 Software quality iron triangle :
(1) organization : Professional 、 Independent test team .
(2) technological process : quality management system (CMMI4)、 Workflow ( R & D process 、 Testing process 、 Defect management process 、 Test pending / Recovery conditions 、 Test pass criteria 、 Review process, etc ).
(3) technology : Technical talents 、 Expertise 、 Professional knowledge 、 Training, etc
The improvement of quality is not infinite , Cost and schedule must be considered , Under the constraints of cost and schedule , Improve the product quality as much as possible .
3、 Software quality model :
Common software quality models :MoCall Model (1977 year )、Boehm Model (1978 year )、ISO 9126 Model (1991 year )、ISO 25010 Model (2011 year ).
Next, I will focus on ISO 25010 Model , It is divided into eight characteristics ,31 Sub characteristics :
(1) Functional applicability : The function of the software can reach the design standard and meet the needs of users
① correctness : Whether the functions provided are correct .
② Suitability : Whether the individual functions provided are perfect
③ integrity : Whether the overall function provided is perfect
(2) Operational efficiency : Under specified conditions , The time characteristic of software to operation ( Such as response speed ) And to achieve a certain function, effective use of computer resources ( Including memory size 、CPU Take up time, etc ) The degree of , High local resource consumption is usually a performance bottleneck ; The number of concurrent users that the system can bear 、 The number of connections, etc , We need to consider the scalability of the system .
① Time characteristics : response time , Such as 2-5-8 principle
② Resource utilization : Such as CPU Occupancy rate 、 Memory usage 、 disk IO、 Network bandwidth occupation, etc .
③ Capacity : The extent to which a product or parameter meets the requirements to the greatest extent . Such as concurrent users 、 Disk usage 、 The maximum number of documents that can be opened 、 Open a single document to the maximum extent .
(3) Ease of use : For a piece of software , User learning 、 operation 、 The level of effort to prepare input and understand output , If the installation is simple and convenient 、 Easy to use 、 Friendly interface , And can be applied to different characteristics of the user , Including for the Disabled 、 People with defects can provide effective ways or means to use products ( Accessibility 【 Also known as accessibility 】)
① Identifiability : Users can quickly judge whether they meet their needs . Such as intuitive design ( The shape of the button ,word The button saved in the document is SD The look of the card )
② Easy to learn : Help users learn by themselves . Such as novice tutorial 、 Help document 、 Operation manual, etc .
③ Easy to operate : Few operation steps , If the menu level does not exceed 3 level 、 Support the operation of shortcut keys .
④ User error protection : Avoid user input errors or prompts for input errors . Such as input error prompt 、 The text in the input box displays , The prompt in the input box .
⑤ The user interface is beautiful : Color matching to improve user joy and satisfaction 、 Text scale 、 Interface layout, etc .
⑥ Accessibility : People with disabilities 、 People with defects can provide effective ways or means to use products .
(4) Compatibility : When sharing the same hardware or software environment at the same time , The system or component can exchange information with other systems or components , And the degree to which it performs its required functions .
① Coexistence : Software can give the system platform 、 Subsystem 、 Third party software, etc , At the same time, we also deal with internationalization and localization properly , There is no adverse effect .
② Interoperability : Two or more systems 、 Products or components can exchange information , And the degree of using the information that has been exchanged , involve API And file formats, etc , Such as word It can be printed on different printers .
Today, , People are right. “ Compatibility ” Some changes have taken place in the cognition of this noun , talk about “ Compatibility ” The concept of , In fact, it is closer to adaptability in portability **. Such as , Operating system compatibility 、 Browser compatibility 、 Resolution compatibility 、 Mobile phone model compatibility .
(5) Security : Its data transmission and storage are required to ensure its security , Including authentication of user identity 、 Encrypt and verify the integrity of the data , All critical operations are documented (log), Be able to review the actions of different user roles . It's about confidentiality 、 integrity 、 Non repudiation 、 Verifiability 、 Authenticity .
① confidentiality : Ensure that the data will not be leaked . Like encrypted storage 、 Encrypted transmission, etc .
② integrity : Ensure that the data is not destroyed , tamper-proof , Loss prevention .
③ Non repudiation : Actions that have occurred , Undeniable? .
④ Verifiability : What happened , Recheckable .
⑤ Authenticity : User identity can be proved .
(6) reliability : Under the prescribed time and conditions , Software can maintain its normal functional operation 、 The level of performance / probability , For example, the higher the maturity , The more reliable ; use MTTF (mean time to failure, Mean time to failure ) or MTBF(mean time Between failures, Mean time between failures ) To measure reliability .
① Maturity : The software can handle internal errors very well , There will be no exceptions . For example, after Taobao website program occupies the server to a certain extent , Will force the release of memory , To ensure the operation of the website .
② Fault tolerance : The software can handle external errors very well , There will be no exceptions , When the input in the registration input box exceeds the limit , There will be no page exceptions , Instead, a friendly prompt appears .
③ Resilience : Can you recover after an exception 、 How long will it take to recover 、 How far can it recover . For example, during thunderbolt download , Power failure occurs 、 Broken net 、 When you turn it off , Breakpoint continuous transmission is available .
④ Usability : The combination of the above three points .
(7) Portability : The ease with which software can be transplanted from one computer system or environment to another , Or how easy it is for a system to work with external conditions . It's about adaptability 、 Ease of installation 、 Replaceability .
① adaptive : The ability of software products to adapt to different specified environments without special means . Operating system compatibility 、 Browser compatibility 、 Resolution compatibility ...
② Ease of installation : The ability of a software product to be installed in a specified environment . Install the test ... Graphical interface installation 、 Command line installation, etc
③ Replaceability : Software products in the same environment , The ability to replace a designated software product for the same purpose .
(8) Maintainability : When a software is put into use , Demand changes 、 Environment change or software error , The extent to which efforts have been made to modify accordingly . It involves modularity 、 reusability 、 Analyticity 、 Modifiability 、 Testability, etc
4、 Common quality management systems :
(1)ISO9000: Applicable to all industries .
(2)CMMI: Software Capability Maturity Model , Applicable to the software industry , There are five levels :
Level 1 Initial level : At maturity level 1 Class time , The process is usually random and chaotic . The success of these organizations depends on the ability and heroism of the people in the organization . maturity 1 Level organizations also often produce usable products and services , But they often exceed the budgets and costs recorded in the plan .
Level 2 Management level : At this level , It means that the organization should ensure planning 、 Documentation 、 perform 、 Monitor and control project level processes , And you need to set clear goals for the process , And can realize the cost 、 Progress and quality objectives .
Level 3 Level defined : At this level , Enterprises can define standard processes suitable for their own enterprises and projects according to their own special circumstances , Institutionalize this set of management system and process, so . At the same time, enterprises began to accumulate projects , Collection of enterprise assets .
Level 4 Quantitative management level : At maturity 4 level , The organization has established product quality 、 Quantitative objectives of service quality and process performance . Maturity level 3 Grade and 4 The key difference of level is the predictability of process performance .
Level 5 Optimization level : At the optimization level , The project management of the enterprise has reached the highest level . Maturity level 5 Level focuses on incremental and innovative process and technology improvement , Continuously improve process performance . At maturity 5 Class time , Organizations use data collected from multiple projects to focus on overall organizational performance .
(3)6 Sigma : Apply to IT manufacturing ,6 Sigma refers to only 3.4 A defective product .
3、 ... and 、 unit testing :
1、 The object of unit test :
function : A code set that can complete a function .
The calling relationship between functions :
2、 pile : When testing a function , The function that needs to be called is called pile . It enables the function under test to compile through , And it is necessary to simulate the substituted lower level function , To get various return values ( According to the test needs ).
3、 drive : The upper function of the function under test , To verify the function realization of the tested function ( Whether the return value is the same as the expected result )
4、 Unit test strategy :
(1) isolated : Do not consider the relationship between the measured function and other units , Perform a single test on the tested function .
advantage : High coverage can be achieved
shortcoming : A lot of pile and drive development is required , Low efficiency .
(2) The top-down : Test functions hierarchically from the top unit down , Except for the top layer , Take the upper measured function as the driver , Until all units are tested .
advantage : There is no need to develop drivers , More efficient .
shortcoming : As we move on , The test complexity is getting higher and higher .
(3) Bottom up : Test functions from the bottom up , Except for the bottom , Treat the measured function as a pile , Until all units are tested .
advantage : There is no need to develop piles , More efficient .
shortcoming : The test quality of the underlying function has a great impact on the upper function .
(4) blend : The above strategies are mixed .
Four 、 Integration testing :
1、 Integration test hierarchy : And HLD The level of design is related , Common levels are : Function integration within the module 、 Integration between modules 、 Integration between subsystems .
2、 The focus of integration testing :
(1) Internal interface : Pay attention to the mutual calls between functions .
(2) Integrated functions : Focus on the use of a single function and the coexistence or mutual invocation of functions .
3、 Integration test strategy :
(1) Big bang Integration : Integrate all components at once , Similar to system testing , But pay more attention to the call between interfaces .
advantage : It is easy to operate and supports multiple people working in parallel .
shortcoming : Fault isolation is not supported ( That is, it is difficult to fix and locate the problem )、 The probability of successful one-time integration is very low , Even if it works , Tests on many interfaces will also be omitted , Insufficient coverage .
(2) Top down Integration : Similar to unit testing .
advantage : Support fault isolation , It can find the problems of main control point and judgment point earlier .
shortcoming : The development of piles is needed .
(3) Bottom up integration : Similar to unit testing .
advantage : Support fault isolation .
shortcoming : A lot of driver development is needed , And the time to discover the mistakes of the upper layer is delayed .
(4) Sandwich Integration : A mix of bottom-up and top-down , Divided into three layers : The upper 、 Target layer 、 Bottom , Finally meet at the target level .
(5) Function based integration : Similar to the big bang integration , But slower than the big bang .
advantage : You can see the realization of the function as soon as possible .
shortcoming : Similar to the disadvantages of big bang integration , Incomplete fault isolation , Inadequate interface testing .
5、 ... and 、 The system test :
1、 What is system testing : Join .
2、 System test process : Refer to test activities
3、 Common system test types :
(1) A functional test :
① Single function test : A test of a single function . Such as login, etc .
② Functional interaction : Test whether there is interaction between different functions , Such as the interaction between the foreground and the background : Login with different permissions 、 Relevant operations can only be carried out after logging in .
③ Business scenario : Simulate the test of users using the software under test . Business process testing .
(2) Performance testing :
① Definition : Test according to the performance index proposed by the demand .
② Common performance indicators :
response time : Such as the response time of the page , Response time of operation ( export 、 Import 、 Query etc. )
Memory footprint : Memory usage when running the system .
CPU Occupy : When running the system CPU Use situation .
disk IO: The rate at which the disk reads and writes when the system is running .
Traffic : The change of network bandwidth when running the system .
Disk space usage : The amount of disk space the software occupies .
③ Common performance tests :
The load test : The performance of the product under different concurrency , For example, a website is 1000/2000/5000 When users are online at the same time , How fast is the query speed of the website , This process of gradually increasing the number of users is also called incremental loading .
Capacity test : The maximum capacity of the product to withstand the amount of data , Such as WPS, How many blank documents can be opened on a computer at most , How much can each document be stored at most , How many online users can the website support at most .
Pressure test : The performance and reliability performance of the product when the maximum load far exceeds the requirements . Also called destructive testing .
Stability test : The product is under normal load , Performance and reliability performance of products under long-term operation .
(3) Interface tests (GUI test ): For the display of interface elements , Process response ( Such as pressing a button , There are changes in color , Usually, the operation event corresponding to the button ), The layout of the elements ( Refer to the prototype drawing in the requirements specification ), Shortcut key support (tab key ,enter key ) Test of .
(4) Compatibility test : Mainly consider the function test and interface test under different environments . The points often considered are :
① operating system :
PC End :Linux(centOS(6、7、8)、ubutun、redHat etc. )、Windows(7、8、10)、macOS
Mobile :Android( Different versions )、IOS.
② browser :
PC End browser :chrome、Firefox、360、IE、safari、 Cheetah, etc .
Mobile browser :UC、Safari、 Quarks, etc .
③ The resolution of the :
PC End :1376768、19201080 etc.
Mobile :...
④ The network environment
Ps: Compatibility testing strategy : Because it is impossible to execute all test cases in different environments , Generally, it is divided into main measurement environment and auxiliary measurement environment . The main test environment can have one or more , All test cases need to be executed , There are usually multiple auxiliary testing environments , perform 1、2 Level priority use cases and focus on interface testing .
(5) Safety test : Security of some data 、 Security of permissions 、 Testing for security vulnerabilities .
① Data security : Users' sensitive data needs to be encrypted ( The encrypted 、 Encrypted storage ), Back up important data .
② Authority security : The authority to add, delete, modify and query data .
③ Security vulnerabilities : Use vulnerability scanning tools (burpsuit、appscan etc. )
(6) Install the test :
① Test before installation : Check whether the documents in the package are complete ( Install deployment documentation 、 Help manual, etc ), Whether there are viruses or trojans .
② Testing during installation : Options during installation ( The previous step 、 next step 、 Cancel waiting ) Test of .
③ Test after installation : Is the installation complete , Whether the installed software can run .
(7) Reliability test :
① Abnormal test : Broken net 、 power failure 、 Hardware damage 、 Operation of a function under fault .
② Stability test : The product is under normal load , Performance and reliability performance during long-term operation .( Such as APp Will flash back or some other errors occur after running for a long time )
4、 System test environment
(1) Environmental composition :
Hardware :PC、 The server 、 Network devices 、 Handheld devices, etc .
Software : Software under test 、OS、 database 、web The server 、 Test data 、 Test scripts, etc .
(2) classification :
① Main test environment : Execute all test cases .
② Secondary test environment : Perform basic functional test cases (1、2 level )
③ Real environment :
④ Simulation environment : Use tools to simulate the network environment for testing (fiddler etc. ); Cloud test platform ; Simulator, etc .
(3) Preparation of system test data : Use product data ( After desensitization of users' real data , Such as some order data 、 Commodity information ); Hand made ; Tool generation ; random number .
5、 System test execution process :
(1) Set up the test environment
(2) Pretest : Also known as smoke test , Check some basic functions , Check whether it meets the requirements of subsequent tests .
(3) Formal system testing : It is necessary to predict after the test , After the use case is reviewed , The test will be formally conducted after the test environment is built .
(4) Execute use cases : Fill in the test record , And record the test case execution results ( adopt 【 In line with the expected results 】、 Failure 【 Not in line with the expected results 】、 Blocking 【 There are other reasons why use cases cannot be executed 】、N/A【Not Applicable, Do not apply , Indicates that the use case can be ignored , It usually happens when the implementation method changes 、 Requirements change, etc., resulting in no need to implement the use case 、 Situations that do not have to be implemented 】).
(5) Submit BUG, Waiting for development to solve BUG Then carry out regression test .
(6) Write test daily report : Report daily implementation ( How many BUG、 How many use cases are executed 、 Existing problems and what help you need ).
(7) Write test report / Test summary / Defect report : At the end of test execution ( It meets the standard of passing the test ) Documents to be written .
PS: Test report : Documents for quality evaluation of products .
Test summary : Summary of the testing process .
Defect report : As mentioned below .
6、 ... and 、 Test case writing :
1、 Definition : It is a guiding document for test engineers to carry out test execution . Tell the test engineer , How to test a case ( Get ready , step , Expected results ).
2、 effect :
(1) Prevent test omission .
(2) Prevent repetition of tests .
(3) Test cases can be reused .
(4) Can be found SSR、HLD、LLD The flaw in .
(5) The workload of test case execution can be estimated .
3、 Eight elements of test case :
Generally speaking , When writing use cases, only the elements marked in red
7、 ... and 、 Defect management :
1、 effect :
(1) Omission that will not cause defects ;
(2) Easy to track defects ;
(3) Convenient for defect analysis , And then prevent defects .
2、 Contents of defect report :
3、 The principle of defect submission :
(1) playback : Reproduce at least three times , If it doesn't happen every time , Record the recurrence rate .
(2) Preliminary positioning : Make a preliminary judgment on the causes of the defects ( Front end or back end ).
(3) extend : Check other parts of the defective module , Check whether the same problem exists .
(4) Compress : Streamline any unnecessary information , The steps should be concise and clear .
(5) Disambiguation : Semantic clarity , Avoid ambiguity .
(6) neutral : Neutral attitude , State the facts . Do not add emotional language .
(7) review : Check yourself before submitting defects , For the defects submitted by the junior test engineer, it is necessary to add experienced colleagues for peer review .
4、 Defect management tools : ZenTao 、mantis、Bugzilla、BugFree、 And some self-developed tools .
5、 Defect tracking process : Generally, it is submitted by testers BUG after , Reviewed by the test manager , After the review, assign it to the development manager , The development manager further reviews ( assessment ), After passing the review, assign it to developers to repair . The process varies from company to company , Subject to the actual situation .
Last : It can be in the official account : Sad spicy bar ! Get one by yourself 216 Page software testing engineer interview guide document information 【 Free of charge 】. And the corresponding video learning tutorial is free to share !, It includes basic knowledge 、Linux necessary 、Shell、 The principles of the Internet 、Mysql database 、 Special topic of bag capturing tools 、 Interface testing tool 、 Test advanced -Python Programming 、Web automated testing 、APP automated testing 、 Interface automation testing 、 Testing advanced continuous integration 、 Test architecture development test framework 、 Performance testing 、 Safety test, etc. .
Learn not to fight alone , It's best to keep warm , Achieve each other and grow together , The effect of mass effect is very powerful , Let's learn together , Punch in together , Will be more motivated to learn , And you can stick to it . You can join our testing technology exchange group :914172719( There are various software testing resources and technical discussions )
Friends who like software testing , If my blog helps you 、 If you like my blog content , please “ give the thumbs-up ” “ Comment on ” “ Collection ” One Key triple connection !
边栏推荐
- Flink -- 内置函数(ALL)
- 硬 货 | 一改测试步骤代码就全写?为什么不试试用 Yaml实现数据驱动?
- FileNotFoundError: Could not find module ‘... dll‘ (or one of its dependencies).
- QT: QSS custom qtoolbar and qtoolbox instances
- 《通信软件开发与应用》
- 你真的需要自动化测试吗?
- Flink-- custom function
- . Net core - a queuing system for wechat official account
- Basic usage of sqlmap
- Numpy quick start (V) -- Linear Algebra
猜你喜欢
月薪过万的测试员,是一种什么样的生活状态?
Qt:qss custom qscrollbar instance
Uni app learning 1 bottom menu and parent-child components
[roast & brain hole] Some Thoughts on the bullet screen interactive game of Wei Shu Wu Three Kingdoms when visiting station B
17K薪资要什么水平?来看看95后测试工程师的面试全过程…
现在零基础转行软件测试还OK吗?
你真的需要自动化测试吗?
面试官:Redis中列表的内部实现方式是什么?
Interviewer: what is the internal implementation of the list in redis?
嵌入式软件测试怎么实现自动化测试?
随机推荐
Praise syllogism
“测试人”,有哪些厉害之处?
Small file special
文件上传下载测试点
Logstash backup tracks the data records reported
QT:QSS自定义QHeaderView实例
DAY 7 小练习
Qt:qss custom qpprogressbar instance
Flink--Chain的条件源码分析
The normal one inch is 25.4 cm, and the image field is 16 cm
Qt:qss custom qradiobutton instance
T5 的尝试
QT:QSS自定义 QSlider实例
17K薪资要什么水平?来看看95后测试工程师的面试全过程…
Wechat applet training 2
公司测试部门来了个00后卷王之王,老油条感叹真干不过,但是...
QT: QSS custom qsplitter instance
Numpy quick start (II) -- Introduction to array (creation of array + basic operation of array)
QT:QSS自定义QMenu实例
Snownlp emotion analysis