QA Testing Estimation Techniques

User Story Planning
QA Testing Estimation Techniques

QA estimates are an important part of the Agile software development life cycle. Without reliable QA testing estimation techniques, there’s no way to know which features will fit into a release timeline.

As a result, it’s nearly impossible to have a successful sprint without estimates. And while many people think of estimates as something that only developers provide, it’s crucial to get estimates from the QA team as well.

QA Testing Estimation Techniques

When getting started, it can be difficult to get the hang of estimates. Many new QA testers wonder how they can possibly guess the number of hours ahead of time. Fortunately, a handful of pretty simple factors can help you get the hang of providing QA estimates.

Some aspects to consider when working on QA estimates include:

  • The reliability of the team’s Agile process
  • The skill of the developer(s)
  • Devices that need testing
  • The complexity of the feature or bug fix

QA Estimation Techniques in Agile

QA vs. Dev Estimates

Some companies use a set method for QA estimates. One example of this is using a percentage of the developers’ estimates. For example, let’s say that engineers estimate 40 hours to complete a given feature. If a company used the above strategy, with 25% for QA, they would automatically enter a QA estimate of 10 hours.

While it’s a popular strategy, this “one size fits all” approach can cause problems. In practice, it often results in teams over-promising and under-delivering on quality. Getting custom estimates directly from QA testers can be the difference between a late, buggy version and a successful release. QA Testing Estimation Techniques

Do the Jira Stories Have What You Need for QA Estimates?

In order to give a good estimate, QA needs to know the details of the feature being developed. A vague overview won’t usually provide enough information for a good estimate. As a general rule of thumb, acceptance criteria should always be provided. QA should also feel empowered to ask clarifying questions and offer suggestions on user experience.

For example, say there’s a new video player being developed. Imagine the user story including details like “closed captioning, allowing users to save where they left off, next/previous buttons,” etc. With this information, QA would be able to give a much more accurate estimate than if the ticket simply said “video player.”

To learn more about optimizing Jira for QA, see our article on the Jira QA Workflow and Best Practices.
Continue reading →

Why Developers and QA Should Be Hired Separately

Hire Developers & QA Separately (cartoon of business people shaking hands in front of large contracts in the background. Business people are Black, Asian, Latinx, and white men and women)
Why Developers and QA Should Be Hired Separately

When it comes to software development, Developers and QA testers go hand in hand. The developer and QA relationship is one of the most important parts of an Engineering team. Developers are responsible for building a mobile app or website, while QA testers make sure that it’s functional and has great user experience. Software wouldn’t exist without developers, and it might not make it to market without QA.

Given that they work so closely together, many would think that hiring developers and QA from the same company would simplify the process. However, doing so can actually increase risk and cause unforeseen issues.

Transparency

Hiring Developers and QAWhen you’re hiring developers and QA from the same software development company, the level of transparency tends to be lower. Why? Because each group is ultimately beholden to the company you’re hiring from.

For example, say that a developer notices that a QA tester is missing bugs or otherwise underperforming. The dev will be unlikely to come to the client with this information. After all, it’s a negative representation of the company they both work for. Similarly, a QA tester may have issues getting necessary information from a developer. However, they can’t communicate this to the client without making their company look bad. Continue reading →

QA Recommendations for Digital Agencies

QA for a Digital Agency
QA Recommendations for Digital Agencies

Many aspects of the typical Agile QA process are meant for long-term engagements with regular releases. But unlike a typical company, which might have the QA team testing the same app or site for years at a time, digital agencies cycle through projects regularly. Because of this, they have unique needs when it comes to QA testing.

So how do you implement a QA process that’s optimized for creative agencies without sacrificing quality? Check out our list of QA recommendations for digital agencies below! (Looking to hire QA testers for your creative agency? Read more about our QA testing services for digital agencies.)

QA Recommendations for Digital Agencies

QA FreelancerHire freelancers. QA contractors usually have experience working on multiple short-term projects at once, which is perfect for digital agencies. Freelance QA testers are also self-managed, and accustomed to shorter ramp-up times on projects. When you find a good contractor, you can simply send the project link or build and let them work their magic.

Hiring a QA freelancer also works well with digital agency budget and commitment requirements. Instead of permanently employing someone at 40 hours a week, you can hire a freelancer on an hourly basis as needed. Continue reading →

How QA Can Improve Your Site With SEO

SEO QA
How QA Can Improve Your Site With SEO

SEO is not usually associated with QA testing. In fact, at most companies, SEO analysts and QA testers work completely separately in different departments. While we’re not advocating for QA testers to replace SEO specialists, it can be extremely beneficial for QA to learn the basics of SEO — and incorporate this knowledge when testing websites.

What is SEO?SEO QA

SEO stands for search engine optimization. In a nutshell, the purpose of SEO is to have your website page(s) rank as highly as possible in search engine results.

For example, say that you have an e-commerce site that sells Lady Gaga merchandise. Ideally, if someone Googles “Lady Gaga t-shirt,” your page would be the first result. (Just make sure you’re not sold out — Lady Gaga fans don’t mess around.)

There are a number of strategies for achieving higher ranking with SEO. Some of these include:

Writing quality content that’s appealing to read. This will result in more traffic (people love sharing!). It will also result in more time spent on the page (which search engines take into account, referred to as “bounce rate”). Continue reading →

The Developer and QA Relationship

Developer & QA Teamwork
The Developer and QA Relationship

Anyone who does QA testing for a mobile app or website will likely interact with one or more developers. QA’s role is to report problems with a site or app, while developers are in the position of fixing the issues. Because of these dynamics, it’s essential that the developer and QA relationship is friendly and robust.

Teamwork

Typically, communication between developers and QA will take place throughout a project or Sprint (in an Agile QA process). At the beginning of a Sprint, QA might have questions about features, data, or end point information. During the middle of testing, QA will find issues and file bug reports for developers. And at the end, developers and QA will work together to make sure the release launch happens smoothly. None of these steps can succeed without strong teamwork between both groups.

Developer & QA TeamworkR-E-S-P-E-C-T

In order to have a healthy process and great end product, the developer and QA relationship should be one of mutual respect. In this vein, it’s important for QA to avoid bringing blame into any bug reports. When bugs are reported in a judgmental way, it’s natural for developers to feel personally attacked. After all, it’s their code – so if QA is communicating problems in a condescending manner, it can be feel belittling. Continue reading →

QA Testing Vocabulary

QA Testing Vocabulary
QA Testing Vocabulary

If you don’t work in QA, it can be difficult to keep track of all the lingo. (Even if you do work in QA, it’s not always easy!) So we put together a handy primer on QA testing vocabulary. After all, everyone has to start somewhere, and a good team will never make you feel embarrassed to ask questions.

While this list may not help you win your next Scrabble tournament, it should help give you a basic understanding of common QA testing vocabulary.

Types of QA Testing Vocabulary

Manual Testing means testing the app or site by hand. For example, opening a browser and manually navigating to different sections of a website, looking for user experience issues or bugs. (For more, see What is Manual Testing?)

Automated Testing means using a programming language (such as Java) to write scripts that will navigate a website or app. These scripts can generate reports for issues such as broken links, missing text, etc. (For more on the differences between manual and automated, see Manual vs. Automated Testing.)

API Testing means checking the quality/accuracy of an API, which stands for Application Programming Interface. APIs send requests and responses to/from remote servers.

For example, say that you type in text and click “Search” on Google.com. The search engine API then sends the content request, and returns the search results.

Performance TestsPerformance Testing involves checking the response time for an application or website in typical usage scenarios.

For example, let’s say that you know that your website gets 50,000 hits on a normal day. With performance testing, you could use a program to see how many seconds it would take to load in that scenario.

Load Testing is very similar to performance testing, but with even more of a focus on finding the exact point at which an app or site would crash or go down. Continue reading →

What is Quality Assurance Testing?

So you’ve heard of QA. But what is Quality Assurance testing? If you look in a dictionary like Webster (or if you’re really hip, dictionary.com), you’ll find a definition like this:

A program for the systematic monitoring and evaluation of the various aspects of a project, service, or facility to ensure that standards of quality are being met.

Or:

A system for ensuring a desired level of quality in the development, production, or delivery of products and services.

But these explanations are pretty vague. They could even end up leaving you more confused! So let’s define QA testing in a way that’s a little more relevant.

What is Quality Assurance Testing?

What is Quality Assurance Testing (picture shows a wood desk with a Macbook laptop, an iPad, and an iPhone on it)First, we should be clear: when we refer to Quality Assurance testing, we’re talking about various types of software testing.

In this context, QA testing involves trying to find problems with a site or app before they reach the end user (ie: the person downloading the app from the App Store). Remember the last time your favorite app crashed? With a comprehensive QA process in place, QA testers could have caught that before it launched. Continue reading →

Best Practices for Reporting Bugs

QA Bug Report
Best Practices for Reporting Bugs

Reporting bugs with a mobile app or website is the most important job that QA has. When QA testers find bugs, the issues need to be communicated with consistency and clarity. Since the Agile QA process is all about moving fast, developers won’t always have time to follow up with QA about every little detail. But how do you follow best practices for reporting bugs?

If a bug report provides the right level of detail, it paves the way for:

  • Developers to work on the proper fix
  • Project/product managers to prioritize bug fixes
  • QA testers to avoid duplicate reporting
  • Ensuring that QA tests the bug fix correctly

Best Practices for Reporting Bugs

Include as much information as possible. Okay, so mentioning the color of the t-shirt you were wearing when you foundBest Practices for Reporting Bugs (picture shows a hand holding a coffee cup on a desk, and another hand resting on a laptop trackpad) the bug might not be helpful. But the more details you can provide about the bug scenario, the easier it will be for a developer to identify and fix it. For example, does it only happen when using a VPN? Is it Chrome-specific? Further, are free and paid accounts affected? Include these type of details in your bug report whenever possible.

If it’s a critical bug, sound the alarm. Bug reports can get lost in JIRA until the next Sprint Planning session. (Learn more about the Jira QA workflow and best practices.) So if the bug in question is serious and user-facing (for example, a crash in the live App store version), it’s a good idea to go above and beyond creating a ticket. In addition to throwing a bug report in Jira, you can Slack the URL to a product manager to make sure they’re in the loop. Continue reading →

8 Advantages of Diversity in Tech

Women in Tech
8 Advantages of Diversity in Tech

Having a diverse workplace brings many obvious benefits. For example, it provides opportunity for more workers, and reduces discrimination. But the advantages of diversity in tech don’t end there. Leveling the playing field for people from all types of backgrounds can bring your business a host of other benefits as well.

Why Does Tech Need More Diversity?

In the world of tech, it’s well-known that workplaces tend to be mostly made up of very specific types of people. It makes sense to be discerning when it comes to skill. But it’s beneficial for companies to be open when it comes to race, gender, and other metrics. Like any other sector, technology can benefit from more women, people of color, people with disabilities, trans and queer people, and diversity in general.

Advantages of Diversity in Tech (picture shows a whiteboard with two people standing in front of it)Some people think that ethics are the main positive aspect of diversity at work. We believe that this alone is reason enough to strive for it. But if you’re looking for additional reasons to make these changes, know that diversity in business also strengthens your company in many other ways. It’s truly a win-win for workers and employers in tech.

Having an open-minded hiring process that aims to give everyone a fair chance is a great starting point. Unlike the stereotype that some paint diversity initiatives as, this doesn’t mean hiring people solely because of their classification. Instead, it means taking action to remove bias from the hiring process. It’s good to keep in mind that bias can be unconscious, and you may not always be aware of it. Actively taking steps to confront it is the best way to get past it. Continue reading →

Collaborative QA: The Benefits of Job Sharing

Job Sharing
Collaborative QA: The Benefits of Job Sharing

You may have heard of job sharing. But what exactly is it, and how can it help your company? Read on to learn more about job sharing benefits, examples, and more when it comes to QA testers.

The Definition of Job Sharing

Job sharing is when two people share the workload for one full-time job. For example, if you have a 40-hour work week, each person might work twenty hours. When working with remote freelance contractors, this type of arrangement can be a huge asset when you have a tight budget. (Read more about the advantages of hiring remote workers.)

Job Sharing Benefits

Minimizing issue with time off. Anyone can be out sick or on vacation from time to time. When you have two people sharing the job, absence-related issues are greatly minimized. Where previously you may have had to delay a release, instead you now have a built-in backup. This also reduces stress for workers, who can feel less pressure to work while sick or avoid taking a vacation.

Job Sharing

Comprehensive coverage. Everyone has different preferences for working hours. Some might want to start at 7am and end the day earlier, while others would prefer to start at 10:30 and be on later. Given contractor law, having two freelancers on a project helps you stay compliant without sacrificing availability. Allowing testers to work during their ideal hours will also help them feel more energized and productive. Continue reading →