Please enable JavaScript.
Coggle requires JavaScript to display documents.
Testing Methodologies (Dynamic Testing (This is executed to check how…
Testing Methodologies
Dynamic Testing
This is executed to check how software is performing/will perform in the run-time environment. Testing checks the functional behaviour of the code, CPU usage and overall performance of the application.
-
Disadvantages
-
-
Difficult to trace the vulnerability in the code, which means it takes longer to fix the problem
White Box Testing
White Box testing is based on the knowledge about the internal logic of an application’s code. It is also known as Glass box Testing. Internal software and code working should be known for performing this type of testing. Under this tests are based on the coverage of code statements, branches, paths, conditions etc.
Advantages
-
Testing eliminates the communication cost between developers and QA, as developers find and fix issues themselves without needing to wait for QA
-
Disadvantages
-
-
If a feature is only partially implemented or something is missing, white-box testing will not pick up on this.
Structural Testing
Another name for White Box testing, in which you can see and use the underlying structure of the code to designand run the tests.
Behavioural Testing
Another name for Black Box testing, as you are testing the behaviour of the software when it's used without knowing the internal logical functions
Black Box Testing
Internal system design is not considered in this type of testing. Tests are based on the requirements and functionality.
Advantages
Tester is free from any pressure of knowledge of specific programming languages to test the reliability and functionality of an application / software
-
-
Disadvantages
-
-
Testing every possible input stream is not possible because it is time-consuming and this would eventually leave many program paths untested
Independent Testing
Involves an independent team, who are involved in the testing activities other than the devloper to avoid author bias. Often more effective at finding defects and failures
-
-
Development Testing
This involves trying to bring the development and testing phase s together. Traditionally separate phases, development testing introduces delay between code and the same code being tested.
Advantages
The developer knows what should happen with the program so it is easier for them to notice when something isn’t working correctly.
Disadvantages
Because the developer knows how the program should work, they are unlikely to do things that could cause problems.
Static Testing
This is done manually or with a set of tools. Tester checks the code, design documents, requirements and adds comments to the documents. Takes place in the early phase of the development cycle
Disadvantages
-
Automated tools only scan the code, and do not review it fully
-
-
Manual Testing
This performed by hand. QA Specialists ensure that the applications work properly by the following conditions written in the test case. A form of manual testing is called monkey testing, this is used with mobile application development, this detects issues with the application which can be unpredictable.
-
-
Automated Testing
This involves testing using automated testing tools, and repeat predefined actions, comparing a developing programs actual and expected outcomes. If the outcomes align the program is behaving as it should.
-
-
Acceptance Testing
Acceptance testing is a level of software testing where a system is tested for accessibility. The purpose is to evaluate the system's compliance with the business requirements, and to assess whether it's acceptable to ship.
-
-
Sanity Testing
This is a subset of regression testing, and is performed when we do not have enough time for doing testing. This is done at the surface level testing where a QA verifies that all the menus, functions, commands available in the product and project are working fine.
Disadvantages
Testing is performed only for some limited feature so if there is any issue in other functionalities then it will be difficult to catch them
-
-
-
Smoke Testing
This is done to make sure if the build received from the development team is testable or not. This is done at the build level.
-
Disadvantages
Not meant to dig deep into codes flaws, which is necessary to uncover major flaws in the code base.
Debugging
Debugging is the process of finding and resolving defects or problems within a computer program that prevent correct operation of computer software or a system
-
Disadvantages
Can lead to too many breakpoints within the solution, so these can be forgotten about
Regression Testing
This kind of test involves running and rerunning functional and non functional tests to ensure that the previously developed and software still performs after changes have been made.
-
Disadvantages
Can be tedious if not done with the correct tools, such as automated tools.
-
Exploratory Testing
This is described as simultaneous learning, test design and test execution. It's about discovery, investigation and learning
-
-