Static Testing is a software testing procedure which is utilized to actually take a look at defects in software application without executing the code. Static testing is done to stay away from blunders at a beginning phase of development as it is more easier to distinguish the mistakes and settle the mistakes. It also helps observing blunders that may not be found by Dynamic Testing.
Its partner is Dynamic Testing which checks an application when the code is run. Refer to this tutorial for a detailed difference among static and dynamic testing.
The two primary sorts of static testing methods are
- Manual examinations: Manual examinations incorporate analysis of code done physically, otherwise called REVIEWS.
- Automated analysis using tools: Automated investigation are essentially static examination which is finished using devices.
Why Static Testing?
Static testing is performed because of the following reasons
- Early defect discovery and correction
- Decreased development timescales
- Reduced testing cost and time
- For improvement of development productivity
- To get less deformity at a later phase of testing
What is Tested in Static Testing
In Static Testing, following things are tested
- Unit Test Cases
- Business Requirements Document (BRD)
- Use Cases
- System/Functional Requirements
- Prototype Specification Document
- DB Fields Dictionary Spreadsheet
- Test Data
- Traceability Matrix Document
- User Manual/Training Guides/Documentation
- Test Plan Strategy Document/Test Cases
- Automation/Performance Test Scripts
How Static Testing is Performed?
To perform Static Testing, it is done in the following ways,
Do the investigation interaction to totally examine the plan of the application
Use an agenda for each document under audit to guarantee all surveys are covered totally
The different activities for performing Static Testing are:
Use Cases Requirements Validation: It approves that all the end-user activities are identified, as well as any input and output related with them. The more detailed and thorough the utilization cases are, the more exact and complete the test can be.
Functional Requirements Validation: It guarantees that the Functional Requirements distinguish every important component. It also checks out the data set functionality, interface listings, and hardware, software, and network prerequisites.
Architecture Review: All business level interaction like server areas, network diagrams, protocol definitions, load adjusting, database accessibility, test gear, and so on
Prototype/Screen Mockup Validation: This stage incorporates approval of requirements and use cases.
Field Dictionary Validation: Every field in the UI is characterized all around ok to make field level approval experiments. Fields are check for min/max length, list values, blunder messages, etc
Static Testing Techniques
- Informal Reviews
- Specialized Reviews
- Static Analysis
- Data Flow
- Control Flow
Devices or Tools used for Static Testing
Different devices utilized for Static Testing are as follow,
Tips for Successful Static Testing Process
A few valuable tips to play out a static testing process in Software Engineering.
- Focus just around things that truly count
- Explicitly plan and track review activities. A product walkthrough and investigation are generally composite into peer’s reviews
- Train members with Examples
- Resolve individuals issues
- Keep process formal as the task culture
- Constant Improvement – Process and Tools
- By eliminating the significant postponements in test execution, testing cost and time can be decreased
Short Notes on Static Testing:
- Static testing is to track down abandons as soon as could really be expected.
- Static testing not a substitute for dynamic testing, both track down an alternate kind of imperfections
- Reviews are a powerful method for Static Testing
- Reviews help to track down abandons as well as comprehend missing requirements, design defects, non-viable code.