“Any test input that must produce an error message is indeed producing is a negative testing”.
“The software doing anything that it is not supposed to do is a negative testing”.
“Any test input or sequence that aims at crashing the application is a negative testing”.
“Showing an error when not supposed to and not showing an error when supposed to “.
“Showing that software will fail and that the failure is handled in a specified manner”.
According to my knowledge “There is nothing like negative testing but there is something called negative test case /test idea”.
Negative testing does not have a well-defined position in the SDLC and so is generally not seen as a distinct phase. Rather, it is a way of classifying some tests, and so directing part of the test effort. Typically, negative testing is most often used during system and integration testing and is designed and performed by test professionals. Negative testing is an open-ended activity and effective approach; it is also a hard-to-manage task that has the potential to produce unwelcome information.
Negative testing cannot be planned in any detailed way, but must be approached pro-actively. The negative testing is that which concentrates on failure mode, observation of failure, assessment of the risk model and finding new, unknown problems.
Negative testing is not a test design technique, but rather an approach it is possible to use many formal test design techniquesThe negative test cases can be derived by using both the black box test techniques and experienced or empirical based test techniques.
If the boundary is between valid and invalid ranges, the test case that uses the invalid value will be a negative test – for instance, using 66 in an age field that only accepts values from 18-65.
Each member of a given equivalence class should, in the context of a known test, make the system do the same thing – so the tester does not have to test every value in an equivalence class. Ranges of invalid input data can be seen as negative tests – for instance, an age field may be expected to reject all negative numbers in the same way.
Given a state transition diagram, or an equivalent understanding, it is straightforward to derive test cases that explicitly examine whether unreachable states are indeed unreachable.
Most systems have explicit and implicit restrictions and constraints. Treating these constraints as requirements can lead to a variety of negative tests. Examples:“No more than five users will use the system at the same time” – a negative test might try sixthen eight.
Typically, these tests involve measurement and observation of the system’s behavior, rather than direct tests against expectations. This is only to be expected if working outside the system’s operating parameters, and the observations can lead to an improved understanding of the system.
Failure mode and effects analysis is the basis for tests that observe the system’s behavior under conditions of failure. It is important to capture and document this information – particularly if they allow troubleshooting on the data or environment.
Testing concurrent use of resources can be a very fruitful way to discover bugs. Initial analysisinvolves identification of data, database entities, files, connections and hardware that more than one process are tried simultaneously.
Testing a system or an application on the fly, is randomly trying to break the functionality or crash the application, can include the negative testing as well.
Testing a system or an application by the testers having common knowledge of the product where it mostly fails.
Advantages:
1. Negative testing is an effective approach to maximize the bug count which is one of the objectives of testing.
2. By fixing the uncovered bugs, we allow confidence in the quality of the system.
3. To see the system’s response to all the crazy activities of the user’s and to ensure that the application does not crash.
Conclusions:·
- All systems will fail under some combination of volume or stress, and tests that seek to find the system’s limits by driving it to failure. The failure may not be always a system crash, but it can be the failure modes of the functionality.
- Negative testing has more of exploratory approach to get the best.· Negative testing is the core skill of experienced testers.
- Negative testing is done having an orientation to the future, anticipating problems and taking affirmative steps to deal with rather than reacting after a situation has already occurred.
- Negative testing is a powerful and effective approach to uncover the bug’s .The most bugs fixed increases the quality level of the software system.
Above all the value of any practice depends on its context
Sources:
Google .com
Testertested .blogspot.com
Ashwinpalaparthi
1 comment:
In my opinion, it might be a good idea to link to the sources than to just mention it. For instance Tester Tested blog might be linked to http://testertested.blogspot.com so that your readers who want to learn more on this might navigate through the links and thank you for the learning they had through your post and the links.
Post a Comment