What is Integration Testing: Learn with Integration Testing Examples
Integration testing is done to test the modules/components when integrated to verify that they work as expected i.e. to test the modules which are working fine individually does not have issues when integrated.
When talking in terms of testing large application using black box testing technique, involves the combination of many modules which are tightly coupled with each other. We can apply the Integration testing technique concepts for testing these types of scenarios. Continue reading →
Having the most optimal product quality is the primary goal of the test organizations.
With the help of an efficient quality assurance process, test teams attempt to find maximum defects during their testing, thereby ensuring that the client or the end user consuming the product does not see any abnormalities with respect to its functioning in their own computing environment. Continue reading →
In many companies, especially small and medium, where there is a strive to establish any work process, it has been observed that testers are a little puzzled about how to start, progress and finish their testing job in a hurried manner.
The project or test manager always pressurize test team to complete testing as soon as possible. With this pressure, somebody starts with a great methodical way but cannot complete the testing; somebody tries to be fast by short-cutting it, but cannot achieve quality. So, there is a problem in daily practice.
This is the guide for software developers and testers to understand and start working on the very famous Agile SCRUM methodology for software development and testing. Learn the basic but important terminologies used in Agile Scrum process along with a real example of the complete process.
SCRUM is a process in agile methodology which is a combination of Iterative model and incremental model.
In this article, we are going to learn how to perform “cloud testing”. In order to understand this, we need to know the cloud computing concept first. This article explains about cloud computing, cloud testing, and the major challenges with testing in the cloud.
Cloud Computing Introduction
Several years ago, the industry witnessed a new buzzword and technology called “virtualization”. With the advent of virtualization, the ideology of sharing computing resources across multiple operating systems in order to increase scalability, reduce capital costs and enable easy administration of the IT infrastructure, it became the backbone of several enterprises.
How to Manage Risk at Test designing or Test execution phase:
There is one other form of Risk management (also sometimes referred to as, Risk-based testing) that occurs during the Test designing or Test execution phase depending on the situation. Now, what situation are we talking about? Let us try to understand that first.
The Ultimate Guide To Risk Based Testing, Risk Management, and Its Approach with Examples:
What is Risk Based Testing?
Risk based testing is to carry out testing or to design and execute the scenarios, such that the top business risks which will have a negative impact on the business as identified by the customer are unearthed in their product or feature early in the life cycle and are mitigated by implementing mitigation measures. Continue reading →
6 years ago, while working with a medium sized MNC, when I suggested to document test scenarios rather than wasting time on preparing the full proof document called test cases, all the heads turned to me in annoyance.
The look on the faces was clearly conveying that I made a big mistake by suggesting it. Although no one denied the idea no one even accepted. Everyone felt that following the tradition, i.e. writing test case document, would be safer. I could not argue.
After 4 years, the company received a testing project, where the only constraint was time and only expectation was full prooftesting.
We were in the meet again and were discussing ideas to meet the critical deadline. The application was mainly about search and generating different reports via different menu items. Documenting test cases was supposed to snatch most of the time and we were not sure, how much the document was going to use to the client.
I suggested documenting test scenarios and somehow with some hesitation, everyone agreed. No need to mention that we could save precious time of documentation and could utilize it for testing.
Are Test Cases being replaced fast with test scenarios?
With time, as everything is changing, software industry and processes also have changed a lot.
Traditional waterfall and v-models are being replaced by agile and iterative models. Documentation is necessary but to meet deadlines and making the process easy and transparent, the way of documentation can be changed.
Documentation of test cases is important when:
The client has asked for the same as part of the project
There is no time constraint (I don’t think it’s possible)
Testers are fresher or unknown to product
Company policy (I strongly believe that it can be changed)
Let me share with you one experience:
I and my team were involved in testing a project from fortune 500 company with flexible timelines. We documented test cases with a best available template and got it approved by the client. Once the build started releasing to QA team, for most of the day, our duty was, mechanically follow 100 test cases per day, update document with pass/fail result and send it to the client at the end of the day. Most of the team members started complaining about monotonous work but the company was generating revenue.
Then there was a break for one day in between with no new build to test. We sat together at the beginning of the day and were discussing what we were going to do for the day. When I proposed to generate more ideas to improve the test case document, all the team members denied putting in efforts. As per them, there was nothing more to think about as we had covered all the scenarios. And convincing them to think out of a box and generate more ideas was really tough.
Most of the time, when we document test cases and that too once approved by the client, that human mind thinks that we have done our job and our mind automatically stops considering any effort to think about other ways to test the product.
And believe me, when test cases document is prepared, we just want to follow it mechanically. Tell me for how many times in your career, you have experienced that you or the teammate offered additional test cases to the approved test cases document?
One more experience:
During weekly team challenge activity, we announced the application and asked the team members to pour in test scenarios. All the team members, including those late responders or non-responders, put in ideas. Why? There was no formal documentation where they had to fill expected result for every sequence of functionality and pre-condition for each test case. We collected 40 test scenarios in a day and that was a great experience.
To favor my experience, I would like to present an example.
Take a sample application, say login page with username, password, login, and cancel buttons. If asked to write test cases for the same, we will end up writing more than 50 test cases by combining different options and details.
But if test scenarios to be written, it will be a matter of 10 lines as below:
As we all are at short of time, test scenarios work as painkiller spray rather than that old time IODEX. And still, the effect is same.
Finally, I would like to summarize the difference between test scenario vs test case:
What it is =>
A concept which provides detailed information what to test, steps to be taken and expected result of the same
A concept which provides one-line information about what to test.
It’s about =>
It’s more about documenting details.
It’s more about thinking and discussing details.
It’s important when testing is off shored and development is onsite. Writing test cases with details will help both dev and QA team in sync.
It’s important when time is less and most of the team members can agree / understand the details from one-liner scenario.
One time documentation of all the test cases is beneficial to track 1000s rounds of regression testing in future. Most of the time, its helpful while bug reporting. Tester just need to give reference of test case ID and does not require mentioning each and every minute detail.
A time saver and idea generation activity, preferred by new generation software testing community. Modification and addition is simple and not specific to a person. For a huge project, where group of people know specific modules only, this activity gives a chance to everyone to look into other modules and brain storm and discuss
Beneficial to =>
A full-proof test case document is a life line for new tester.
Good test coverage can be achieved by dividing application in test scenarios and it reduces repeatability and complexity of product
Time and money consuming as it requires more resources to detail out everything about what to test and how to test
If created by specific person, the reviewer or the other user might not sync the exact idea behind it. Need more discussions and team efforts.
Finally, this post should be concluded as:
Test cases are most important part of Software Development Life Cycle and without the one, it’s tough to track, understand, follow and reason out something. But in the era of Agile, test cases are being replaced fast with test scenarios.
A common test checklist for each type of testing (database testing, GUI testing, functionality testing etc) coupled with test scenarios is the modern artillery for Software Testers. Discussions, training, questions, and practice can definitely change the final graph of your productivity as well as Bug report matrix.
About the Author: This awesome post is written by STH author Bhumika M.
As usual, we welcome your thoughts and queries. Please tune in.
Failure mode and effects analysis (FMEA) is a risk management technique. If implemented properly this can be a great addition to the best quality assurance processes to be followed. In this article, our goal is to introduce you to this risk analysis technique which in the end, is very useful for improving the software quality.
FMEA is mostly used by the upper management or stakeholders. In practice, the testers get little insights into this technique. But now the trend is changing and I feel if the testers understand this concept properly, they can drive their thought process of Continue reading →
What is State Transition Testing and State Transition Diagram? Explained with examples.
In our last article, we saw ‘Cause and effect graph’ test case writing technique. Today let’s move to next dynamic test case writing method – State transition technique.
Note – The test design techniques mentioned here may seem difficult but once you get hold of it, it becomes very easy to implement and re-use, increasing productivity and test coverage. Continue reading →