What is Dynamic testing?
Software testing is often either static testing or dynamic testing. Static testing is to review the project documents without the execution of the software. Dynamic testing is to check the software during its execution. Dynamic testing is either functional or nonfunctional, performed at different levels of software development.
Dynamic Testing may be a software process that is employed to check the dynamic behaviour of software code. The main aim of this testing is to test the software behaviour with the dynamic variables or is also the variables that don’t seem to be constant and also find weak areas in software in the runtime environment.
What does dynamic testing do?
The most important goal of this dynamic testing is to create software that works properly during and after the installation of the software which ensures a stable application without any major flaws. The most important purpose of the dynamic test is to make sure the software behaviour is consistent.
Consider a banking application, we see different screens as My Accounts Section, Funds Transfer, Bill Pay etc. These screens contain an amount field that accepts some characters. Let’s say My Accounts field displays amount as 25000 and Funds Transfer as $25000 and Bill pay screen as $25000 though the number is same, the way amount is displayed isn’t identical thus making the software inconsistent.
Consistency isn’t only limited to the functionality it also refers to different nonfunctional characteristics like performance, usability, compatibility. Hence it becomes very important to perform dynamic testing.
The two kinds of dynamic testing are
- White Box Testing
- Black Box Testing
- White Box Testing:
White box testing may be a testing technique within which the structure/design is tested by the tester. The most important goal of white-box testing is to check on how the System is performing supported by the code. It’s mainly performed by the developers or maybe white box testers who have knowledge about the programming.
- Black Box testing:
This testing may be a method of dynamic testing during which the structure/code/design isn’t known to the tester. The goal of this testing is to verify the functionality of the system under the test and this type of testing requires executing the whole test suite and mainly performed by the testers and programming knowledge.
The black box/specification-based testing is classified as:
- Functional testing : test the functional features of software.
- Non-Functional testing : test the non functional characteristics of the software like performance, portability, maintainability, reliability and user friendliness of the software.
Dynamic testing steps:
Dynamic testing in Software Testing Life Cycle consists of various tasks like Requirements Analysis for tests, Test Planning, Test condition/ case design and implementation, test environment setup, Test suite execution, Bug reporting and at last Test closure. All the tasks in the dynamic testing technique are based on the completion of the previous task within the testing process.
Test Strategy will specialize in the resources available and also the time frame. It’s supported on the factors just like the objective of the testing, the scope of testing, different phases of testing, variety of environment, assumptions or challenges which can be faced, risks, and has documentations to be done.
Test design will identify the:
- Features to be tested
- Deriving the test conditions
- Deriving the coverage items
- Deriving the test cases
- Test environment setup
We’ve to make sure that the test environment should be the same as the production /real environment. During this phase, we’ve to install the build and manage the test machines.
During this phase, test cases are executed.
A bug report is created during the execution. If it’s expected and actual results aren’t identical then the test case is marked as fail and a bug should be logged.