Hello and welcome back to my Blog. Today I am going to be sharing about Static and Dynamic Testing.
What is Static Testing?
Static Testing is a method of software testing in which software is tested without executing the code. Static Testings main objective is to find errors early on in the design process in order to improve the software’s quality. This form of testing reduces time spent finding bugs and therefore reduces the cost of having to pay developers to find bugs. This is advantageous because we get fewer defects when we are nearing deployment. Static Testing also increases the amount of communication amongst teams.
Below, I will give a brief overview of Review and Static Analysis, the two main ways in which Static Testing is performed.
Review is a process that is performed to find errors and defects in the software requirement specification. Developers inspect the documents and sort out errors and ambiguities.
In Informal review the dev shares their documents and code design with colleagues to get their thoughts and find defects early.
After it has passed the Informal review, it is moved on to the Walkthrough. Walkthroughs are performed by more experienced devs to look for defects.
Next, a Peer review is performed with colleagues to check for defects.
Below is a list of free, open-source Static Testing tools:
VisualCodeGrepper
Risp
Brakeman
Flawfinder
Bandit
What is Dynamic Testing?
Dynamic Testing is a software testing method that is performed when code is executed. It examines the behavior and relationship of the software in relation to the performance, (e.g. RAM, CPU). In dynamic testing the input and output are examined to check for errors and bugs. One common technique for performing dynamic testing is Unit Testing. In Unit Testing, code is analyzed in units or modules, which you may know as JUnit Testing. Another common approach to Dynamic Testing is Integration Testing. Integration Testing is the process of testing multiple pieces of code together to ensure that they synchronize.
Below is a list of open-source Dynamic Testing tools:
Selenium
Carina
Cucumber
Watir
Appium
Robotium
I hope you find as much value as I do in learning about these testing methods.
From the blog cs@worcester – Coding_Kitchen by jsimolaris and used with permission of the author. All other rights reserved by the author.