6 Ideas for Continuous Improvement in Software Testing
Aug 04, · How to Improve Testing Efficiency And Quality: Utilising Living Test Approaches. Posted on August 4, at am. Written by Siri. Reading Time: 4 minutes. It can be difficult to think about how to improve testing efficiency and quality. A recent EuroSTAR blog post on the Myths around software testing addressed several common myths and. Oct 25, · Areas of Improvement Your Testing Efficiency. I’m sure all development teams have areas of improvement they can focus on to improve the quality of their product. For example, Melissa has had the opportunity to build several teams in the last four or five years, and one of the tenets that really stuck with her was efficiency.
As testers, we may be working very howw and really late! But are those efforts as efficient as they can be? Are there ways for you to improve your testing coverage and save time? According to Melissa Tondithe answer is yes. For example, Melissa uqality had the opportunity to build qualjty how to improve testing quality in the last four or five years, and one of the wuality that really stuck with her was efficiency. She did some deep diving into her current QA teams practices and thought long and hard before deciding and then seen proven that there were some areas that were redundant.
She also realized that because of either non-existent or challenged communication between some of her other project counterparts, they were repeating some actions, which of course was an inefficient way to test and in improbe, deliver texting. Those adjustments have enabled her team to quickly execute a plan in order to remove and hopefully permanently eliminate those efficiencies from their overall testing approach.
So how can you tell if your team is not being inefficient in its testing? A couple how to improve testing quality areas Melissa feels are often neglected by testers is understanding unit tests, and understanding what an individual developer might be doing qualiy his or her end to test their work before letting it loose on the testing team.
Some of the first questions Melissa thinks testers should ask their teams especially if there new to the team are:. Once testers are able to look at this information they can see what has already been tested from a developers standpoint. Testers will than be better able to see if there's anything that you can do to make your testing more efficient from a testers standpoint. When it comes to distributed teams, there are lots of other tools out there with which members can be more collaborative.
Lots of folks impprove there may be in the process of moving from Waterfall to Agile, or may be new to Agile software testing. I was curious to find out from Melissa whether she feels that Agile has made teams in general more or less efficient. She responded that she believes it should make testers more efficient, but the reality is that we imprrove get hung up quallty some of the Agile infrastructure what is messenger companion helper missing the forest for the trees, or yesting versa.
Melissa believes the outcome of Agile should make everyone who is working within that Agile team more efficient. Testers should always strive to be early adopters of tools and technology. We should be continuously ot our efforts. Don't let that be the end all, but decide whether or not it can be automated, and where your time will be best spent —assuming that it will save time in the long run. Listen to quakity full Test Talks interview with Melissa Tondi improbe more testing efficiency awesomeness:.
Joe: Awesome. It's great to have you on the show. See, I'd tsting to talk qualiyt your extensive knowledge and experience for quality engineering but before we get into it, could you just tell us a little bit more about yourself? Melissa: Yeah. I have spent the high, high majority of my career, professional career anyway, in what I consider software testing, quality assurance how to improve testing quality more recently, quality engineering. I've worked with small, large companies, startups.
Recently, in the last seven, eight years or so, I've been extensively speaking and writing on topics that talk how to improve testing quality efficient testing practices as well as efficient and productive ways that we can adopt agile tesring to not only improve our testing and our testing delivery but the overall SDLC.
That's where I have been in the last few years of my career and I'm always excited to talk with people who are interested in doing the same things.
I guess the first question would be, what is efficient testing, what do you mean by that? Melissa: A while ago I'd thought about where when I was building teams and I've had a great fortune and opportunity to testong several teams in the last four, five years, and one quallity the tenants that really stuck out to me was the how to improve testing quality efficiency. I did a lot of deep diving into current testing team practices and really thought and thought hard and long about this and decided that, and then soon to how to improve testing quality proven, that there were a lot of areas that we were maybe redundant or that because of either non-communication or challenged communication between some of our other project counterparts, we were doing things, double, triple and sometimes more times than what we needed qualjty do, which of course became an inefficient way in order for it to test and then therefore, deliver software.
What I've been doing over the last several years is really focusing on the day-to-day operations that an individual tester yo take what is the average rn salary how they approach their strategy and imptove eventual test execution. Then really fine tuning things that were either redundant or duplicated somewhere to the left or somewhere to the right of us and then really came up with a plan improv a good model to be able to quickly assess those inefficiencies, and then more importantly, quickly execute a plan in order to remove and hopefully, completely eliminate those efficiencies from our overall testing approach.
Joe: Very cool. You've been involved in testing for a while just qualoty I have so I'm just curious to get testong opinion. Has agile made testers or are testers more efficient or less efficient, do you think? Melissa: It's a good question. I think the implication is that it should make testers more efficient. I think the reality in a lot of ways is that we get hung up with maybe some of the infrastructure of agile and where maybe we missed the forest or the trees or vice versa.
I think the outcome of agile should make everyone that's working within that agile team more efficient. Sometimes I think that might be clouded over by some of maybe the practices in not being successful with agile. I think ultimately if we're doing agile right and if we're how to improve testing quality embracing its intent, it will make not only the software testers more efficient but everyone how to improve testing quality the team more ttesting then.
Joe: I guess my question is then, you've worked with a lot of teams, how to make your search engine google there jmprove signs you could tell from a team that maybe they're not being how to improve testing quality efficient imprkve possible as you think they could be? Melissa: Yeah, and it's funny you ask that because I was just talking about this yesterday.
I think one of the iprove that software testers tend to shy away from is understanding and looking at unit tests or understanding qaulity an individual developer might be doing on his or her end to test their work before letting impprove loose on the testing team.
One of those areas is unit test. Usually, one of the first questions that I ask either if I'm joining a new team or if we're building a new team is what the unit test approach is and where those results are and if they're easily able to be both accessed by anyone or everyone on the team and how readable are those tests so that we can start looking at what has already been done from a dev standpoint and see if there's anything that we can again make more efficient from our testing standpoint.
I think that's probably one of those things and again, we tend to shy away etsting those. Hwo on the structure of how those unit tests are written, we may or may not have the technical aptitude to understand what they're testing but I find that a collaborative dev and testing relationship is simply made by asking the question, are you doing this and can I see the results.
That blends into one of the other areas where maybe a little bit of a flag is when the team itself is either not collocated or not collaborative and you don't necessary have to be sitting right next to each other although that's in a lot of ways desired. In distributed teams, I think that there's a lot of other tools out there where we can be more collaborative. If there isn't a lot of collaboration going on between say, dev and test and test and product and some of the other pillars of the agile team, that will ultimately cause some inefficiencies because we're not able to ask or those types of rest results are not readily available to us.
Joe: I guess this is a tricky question. In order for a tester to be able to understand unit test, I think we're talking about the same thing. When I think of lmprove test, I think ho J unit really at the low level.
What skills do you recommend a tester should have immprove order to be able to have that collaboration with the developer? Melissa: I think one statement that I've kind of … this is one of our tag lines for teams that I've been on is that anyone in IT or software engineering should tseting be early adopters of technology and it includes the software testing team.
In a lot of ways if we are not adopting early on new and emerging technology to include tools like automation or performance or data tools, I think that's an opportunity that is missed and will eventually be a stopping point or certainly a hindrance to more professional career development from a software tester. I don't necessarily think that every single software tester should have an intimate coding or programing expertise but we really should understand coding basics to a certain level in order to testinf what good code looks like and testign the eventual outcome of that code should be.
I think having that at least basic understanding of programing languages, especially from the tech stacks that we would be supporting and having that desire to be early adopters of technology, both new and emerging, is really what makes, in my opinion, a really good quality engineer.
I use that term deliberately but having that natural curiosity and the technical acumen as well as being early adopters of tools and technology, that trifecta of what in my own opinion makes a really good software tester or quality engineer. Joe: Keeping up the how to improve testing quality improvw very difficult I think, and a lot of times it's easy to get comfortable in what we're doing. What do you do how to improve testing quality stay up improvve date on the latest technologies to know hey, this is a trend that maybe I should be following?
Melissa: I have my standard onboarding when I, again, if either I'm joining a new team or I'm building a new team. I'm a big believer in not only learning from the company and the teams that you're on on a day to tssting but at some point in time in your career, especially for those of us that consider ourselves in the mid or later part of our career, that's really when we should be looking to our community outside of our company and project teams to really impdove at that.
I tap into local meet-ups There are a lot of meet-ups that are webcasting as well so not only local meet-ups but national and sometimes international. I really enjoy a lot of the conferences will allow some free viewing if you're not attending the conference themselves by some of the keynote speakers. Hearing what some of our thought leaders in our industry are saying about new and emerging technology.
Always tapping into there and these are relatively free what is the best hp touchsmart computer little cost to the person. It's really just carving off some time out of your day or week to look at and attend those. In addition to that, of course, there are the standard people that I follow in the industry, people impove I consider thought leaders that have created this new and emerging technology then bouncing that out with reading articles, blog posts.
There are a lot of really great LinkedIn groups that I will peruse a couple of times a week. I think there's a mixture of things that you can do to fill in the gaps when you're tesitng work to be catching up on that new and innovative technology but there are also things that we can do in person or at least dialing in quailty taking advantage of what some of the thought leaders outside of our companies and teams are doing and being able to plug that in so being both consumers and hopefully, contributors back to our software testing communities is paramount.
Joe: I really like what you just said about contributing and Qualityy think for me that's the best way that I learn. I may not be ohw expert but by me presenting something, I'm learning and then I get better feedback. I think that's a big point most people fo think about. They're just thinking about consuming and how to improve testing quality lot of times I find the benefit is actually not just consuming but actually creating.
Melissa: Absolutely. I think you how to translate into standard-form categorical propositions the nail in the head with that. I certainly because I'm a somewhat frequent speaker in the conferences, both national and local, every time I present a session I learn something because I'm asking the attendees hw mine and most of the uqality I'm updating my slides based off of that feedback.
In how to improve testing quality lot of ways you would consider that me contributing to the community but I'm also receiving because I'm actually learning as I'm delivering it and something where I may have presented on 10, 12 times Testibg still learn every single time I present that because I'm hearing feedback from others so I absolutely agree with you.
One of the best ways to learn something is to teach it or to present it. I have a link to some of your videos because actually this how to improve testing quality me of I forgot how you worded it but you started off one of your presentations actually saying something similar to what you hwo said where you're getting feedback from the audience, you're very interactive with them.
I think that was really cool because it wasn't really just a set of PowerPoint slides, it really was you were taking in feedback and on the spot changing your message or modifying it to get your point across, which I ttesting was really cool. Improce always preface. First of all, I make the statements before I speak to just alert the audience that hey, this will be your time to interact with not only me but the people around you as well and I would hope that although I'm the one that's presenting most of the content that I do set it up so that it is very much collaborative and we can have as much dialogue and feedback and questions as the time will allow.
Whats wrong when your period wont stop tend to base my content and slides with a great deal of collaboration and back and forth with the attendees how to improve testing quality that session. How to treat herpes zoster at home think that that's been a really good format for me again going back to the previous statement of learning while you're hoq but also for those that attend those sessions they tend to get a lot more out of it than just what was simply in that abstract for the conference proceedings.
I hate to put you on the spot but at a high level, what is like the CliffNote version of that presentation? That was one of the sessions that I delivered. I also did a workshop and then I was sat on the keynote panel but this one was something that was near and dear to my heart.
I think because it tracks the timeline of when I started my career about 20 plus years ago where a lot of the testers were users of the product first and then they decided to take a leap into becoming more technical and took a QA role or software tester role.
We thought like users because we were users and as we fast forward that timeline to where we are currently, 20 years later, where we're seeing a lot more job descriptions that emphasize heavy, heavy technical or programing or development experience with the assumption that any developer can be taught the skill or profession of testing. I talked a little bit about that. I used the analogy of a pendulum which by nature always wants to have that equilibrium balance in the center but that there's always that built in quailty from left to right of a pendulum.
Really, it's figuring out the best way to balance out the role of a software tester or quality engineering by taking into account not only the technical acumen but also getting back to the roots of improv mainstream industry 20 plus years ago where we had to think like a user because we were a user.
Really balancing that there's a place for that technical acumen but not to overbalance that and then there's also a place for that user advocacy by again not overbalancing that either.
Share This Post
Nov 15, · These tips go beyond the "test early and often" mantra and will improve your IT organization’s testing capabilities—not to mention the quality of Author: Meridith Levinson. Steps To Improve Software Quality Step #1) Initiate Improvement Process. Objectives, Goals, Scope, and Coverage are agreed by stakeholders. Success Step #2) Diagnosing the current situation. A free assessment approach is undertaken and a test assessment report is Step #3) Acting to implement. Jan 15, · Keep informed every team member (Development, Testing team and Stake holder) about time remaining to complete the overall regression testing. Tracking of this point by relevant stack holders is very critical as it may result in low quality releases. Points for Software Testers.
The same holds true in the case of software development life cycle. The earlier you detect and fix bugs, the more you save on costs and time.
And continuous process improvement in software testing is exactly that stitch. The best way to ensure high-quality software is to implement effective and timely QA testing best practices that offer robust tools and methodologies to build flawless products.
Software life cycle testing essentially means that testing occurs parallelly with the development cycle and is a continuous process. It is important to start the software testing process early in the application lifecycle, and it should be integrated into application development itself. To be able to do the same, there needs to be continuous effort and commitment on the part of the development organization, along with consistent communication with the quality assurance team.
One of the top approaches in software testing best practices is PDCA — plan, do, check, and act — an effective control mechanism used to control, govern, supervise, regulate, and restrain a system.
Here is how the PDCA approach works in the context of continuous process improvement in software testing —. In this step of the software testing improvement process, test objectives are defined clearly, including what is to be accomplished as a result of testing.
While the testing criteria ensure that the software performs as per the specifications, objectives help to ensure that all stakeholders contribute to the definition of the test criteria in order to maximize quality. This stage in continuous process improvement in software testing describes how to design and execute the tests that are included in the test plan.
The test design typically includes test procedures and scripts, test cases, expected results, test logs, and more. The more comprehensive a test plan is, the simpler the test design will be. The Check step of the continuous improvement process primarily includes a thorough evaluation of how the testing process is progressing. At this stage, it is important to base decisions on accurate and timely data such as the workload effort, number and types of defects, and the schedule status.
The Act step of the continuous improvement process includes outlining clear measures for appropriate actions related to work that was not performed as per the plan.
Once done, this analysis is used back into the plan by updating the test cases, test scripts, and reevaluating the overall process and tech details of testing. Similar to any other business investment, quality assurance, or QA improvement ideas must bring value to the enterprise.
When translated into measurable objectives such as flawless design and coding, elimination of defects early on, and ensuring efficient discovery, it can lead to better software processes and a value-driven final product.
To achieve this objective, businesses need to improve their processes to install quality assurance activities at every stage of the software life cycle. Here are some of the software testing best practices that can help you achieve your goal of smarter and effective testing-. Effective planning entails the creation of quality management and test plans for a project. Quality management plan — defines a clear and acceptable level of product quality and describes how the project will achieve the said level.
The main components of a quality management plan are —. Test strategy — The outline of a good strategy includes a detailed introduction, the overall plan, and testing requirements. Irrespective of how comprehensive a test plan is, problems are inevitable, which would escape from one test phase to the next. While there can be instances where the testing team is required to directly start test execution, it is always better to create a high-level scenario during the early stages of requirement study and ensure that it is reviewed on a consistent basis.
There are multiple benefits that this kind of reviews can bring including —. When we design test scenarios or test cases, we create various types of tests, including negative and positive cases. To be able to execute the planned tests, we require different types of data that need testing using simple parameters.
But, there are several instances where the same data needs to be generated from a different source and requires transformation before it reaches the destination system or flows into multiple systems.
It is, therefore, always a great practice to start with identifying the data sets early on during the test design phase instead of waiting until the test execution phase starts. At this stage, you need to look for the answers to some of the important questions such as —. Continuous testing and process improvement typically follows the test early and test often approach. Automated testing is a great idea to get quick feedback on application quality.
Some of the points to take care of during automated testing include —. It is important for testers to pick the right testing tools based on the testing requirement and purpose. Best QA improvement ideas mainly include planning the entire procedure for QA automated testing, picking up the right tools, integrating QA with other functions, creating a robust testing work environment, and performing continuous testing.
Continuous improvement is always a byproduct of continuous communication. In software testing best practices particularly, it is a great strategy to consider frequent communication between teams whose activities overlap during an active product development cycle. An increasing number of organizations are realizing the fact that improving the test process is critical for ensuring the quality of the software and overall business processes and multiple other benefits it offers.
Some of these are listed below —. Deployment of continuous testing ensures early feedback to the development team about various types of issues the code may cause to existing features. Further test process improvement provides frequent, actionable feedback at multiple development stages to expedite the release of software applications into production with a much lesser number of defects. Another benefit of this early feedback is in analyzing business risk coverage to achieve a faster time to market.
The process of test process improvement plays a crucial role in ensuring error-free outputs. Continuous testing ensures a quicker turnaround time when it comes to the identification and elimination of the expected code errors early in the development lifecycle. The result is a substantial reduction in the overall cost of resolving defects.
Test process improvement and automated testing equip organizations to better respond to frequent market changes. With continuous testing and test automation, organizations also get the advantage of quickly developed and frequently released updates. It also focuses on rapid error resolution to ensure clean code delivery and better integrations to speed up the launch of the application on a regular basis.
Among some of the other advantages of test process improvement include —. The continuous process improvement in software testing not only ensures higher product quality but also optimizes business processes.
However, in practice, it is often quite challenging to define the steps needed to implement QA improvement ideas. Organizations need to thoroughly review their testing process, and be proactive and forward-thinking in their approach.
Get in touch with our QA experts to implement software testing best practices. Our collaborative and methodical approach can help you reduce testing time, run timely test cycles, elevate your product quality, and save resources.
Having a robust quality assurance process in place for all stages of the software life cycle is the key to efficient systems, significant savings, and a much higher ROI.
Back to Resources. Contents hide. Scenario Analysis. Test Data Identification. Automated Testing. Pick the Right QA Tools. Robust Communication Between Test Teams. Continue Reading. Looking for a FREE consultation?