News from the World of QA — March 2016

This week’s Betica Blog post focuses on some of March’s more interesting news stories from the QA world. If you want to check out the QA news from last month, take a look at this blog post. The topics contained within hopefully trigger some inspiration on your own software testing efforts.

Software QA Engineer makes the Top 10 Happiest Jobs List for 2016

Those of you working in software quality assurance tend to be happier compared to most other professions, a fact revealed by Software QA Engineer making the CareerBliss list of the Top 10 Happiest Jobs in 2016. This news appeared in Forbes. While software testing can be stressful at times, its advantages definitely outweigh any negatives, especially considering the opportunity to work on innovative technologies.

The tech world in general is well represented on the top ten list, with Full Stack Developer, Android Developer, Senior Java Developer, Chief Technology Officer, Lead Developer, and Lead Engineer all present. Software QA Engineer placed at number 9.

For comparison’s sake, the two highest-ranking jobs on the CareerBliss Top 10 Unhappiest Jobs of 2016 list are Sales Account Manager and Security Officer. Revenge of the Nerds finally comes true!

Performance Testing Still Important in the Agile Era

Even in the current fast-paced Agile era of software development, different aspects of software testing remain relevant, especially performance testing. News about slow web applications goes viral on social media within a few hours. This week, the developer website DZone reported on some performance testing fallacies your QA team needs to consider.

Simply throwing hardware at a performance issue isn’t the best solution. Maybe a memory leak is the source of the problem? Ensure the right amount of performance testing is done before an app reaches production; especially if the development team is possibly overconfident in its own abilities.

DZone also noted the difference between speed and perceived performance in the Agile era. Even with fast load times, customers may feel an application is slow if it takes too long to access their desired information. In this scenario, maybe the user interface design is too complex?

Additionally, the testing team shouldn’t let an absence of errors during validation lull them into a false sense of security about an application’s performance once it hits production. The bottom line is simple. Performance testing remains vital in software development.

Apple’s iOS 9.3 Activation Bug reveals poor QA

Sometimes even the technology giants get QA wrong. Apple’s recent iOS 9.3 update for the iPhone and iPad contained a bug in the activation process that essentially bricked older devices — most notably the iPad 2. This news was reported on in Computerworld among many other sources.

When installing this update, a user is prompted for their Apple ID and password. If they didn’t remember their credentials, or simply mistyped the password, the device stayed hung in an activation cycle, unable to be used. Cupertino quickly released an update without the password requirement for activating the new OS version.

The moral of the story: test updated software on ALL supported devices. Stay tuned to the Betica blog for future stories of interest for QA professionals all over the world.

KVM Virtualization and QA

As we’ve previously noted, the advent of Agile and DevOps methodologies puts the onus on QA professionals to wear many hats, which also includes completing any software testing at a much faster rate. In the current fast-paced business environment, QA teams increasingly depend on a variety of tools and technologies to make their work more efficient. One of these technologies is virtualization; a tool offering benefits to other aspects of Information Technology, including software engineering and network administration.

KVM virtualization, the “KVM” stands for kernel-based virtual machine, is a Linux technology facilitating the creation and management of virtual computing environments used for development and testing, among other purposes. This article provides an overview of this technology and its use for software QA.

A Closer Look at the Kernel-based Virtual Machine

Even though KVM is a Linux technology, it is able to host virtual environments running most major operating systems, including Windows, OS X, and, of course, Linux itself. As noted above, the use-cases for virtualization are numerous, and the technology’s status as arguably the most popular open source virtualization framework for the x86 processor family is a major reason for its popularity in many IT and software development shops.

KVM continues to see wide adoption among Cloud-based service providers, covering a myriad of applications. Enterprises leverage the technology to provide virtual environments for production software, as well as for development and QA. In short, virtualization offers a cost-effective and “green” solution, allowing businesses to concentrate their resource spending in other areas or simply improve their profit margin.

With KVM being a standard part of the Linux operating system, a wide array of support is available from the open source community.

Virtualization facilitates QA “Farm” Development

The Open Source Automation Development Lab (OSADL) is an organization championing the use of open source software in industrial and business applications. The group’s QA farm illustrates the advantages of using virtualization for quality assurance. Virtual environments leveraging KVM are used for both software testing as well as for computer hardware — PCs and embedded circuit boards.

Their work provides a great example of the wide range of applications made easier, cheaper, and more efficient by using KVM virtualization.

Managing Testing Environments using KVM

When considering the QA process, the easy management of test environments is the most obvious use-case illustrating how KVM virtualization benefits software testing. The advantages are numerous, with benefits ranging from saving money on hardware expenditures to the time saving gained from using virtual test servers and their easier management.

Since companies are able to create virtual testing environments quickly and easily, this is advantageous whether a software development shop is following modern methodologies like Agile or DevOps or even a traditional QA model. QA engineers can focus on ensuring the quality of the software without needing getting involved in network administrator tasks better left to the experts. In short, software shops of all sizes need to consider using KVM virtualization to make their work easier.

Stay tuned to upcoming entries on the Betica blog, as we look at other topics of interest to QA professionals all over the world.

Beating the Average Software QA Tester : Strategies for Improving your Software Testing Skills

A good professional Software Tester is someone who never stops learning; they always have an insatiable thirst for knowledge.

Software technology changes quickly. As a result, we need to continuously keep learning new technologies, frameworks, and techniques. This remains one of the most rewarding aspects of the profession. Software testers able to keep up with these changes are worth their weight in gold to most IT companies.

Betica is a technology solutions provider specializing in Software Quality Assurance. We strive to provide superior customer service through our fast, detailed, and accurate software testing. We are proud of our procedures, which allowed us to establish a strong QA team made up of skilled professionals surpassing the industry average.

What follows are some traits necessary for becoming an excellent QA professional:

Always ask WHAT IF

What would happen if I do it this way?
What if the User is not familiar with the system and tried a different approach?

It is important to always ask this question: “What if?” Sure, following test cases is a vital part of the QA process. However, a good tester would not limit themselves to executing only what is written in the test cases.

Ensuring Quality and Quantity

These are the 1000 issues to be verified today”.

A good QA tester must know if the given tasks are achievable within the deadline. If not, they should be assertive to ask for an acceptable timeline to finish the task without sacrificing the quality of the result.

In Betica, we prioritize the quality and quantity of our work output. We are fully committed to provide high-quality services that will meet or exceed the requirements of our clients.

Think like a Customer

As Betica’s Core Value, we place ourselves in the customer’s shoes. Customers have a problem that needs a solution, we explore options on how to solve it, respect their choice and then help them achieve it. 

Effective Communication

Effective communication is a fundamental aspect of the software QA process. In Betica, we have competent QA testers with strong communication skills in order to work according to the client’s requirement and to be able to interact with other team members and clients.

Clear communication will enhance productivity by minimizing errors and reducing the time spent from retesting.

Practice Good Documentation

Documentation is an essential part of the software QA process. Testers are responsible for writing test documents, reporting bugs, and notifying the team about any issues through email. This will make the testing process easy and organized.

Good documentation should contain correct, complete, current, and consistent information so that the whole team can effectively execute their tasks.

Make the Right Decisions

A story was once told about a successful Bank President being interviewed by a reporter:

“Sir, what is the secret of your success?” a reporter asked a bank president.
“Two words.”
“And, sir, what are they?”
“Good decisions.”
“And how do you make good decisions?”
“One word.”
“And sir, what is that?”
“Experience.”
“And how do you get Experience?”
“Two words.”
“And, sir, what are they?”
“Bad decisions.”

The moral of this story is that there is nothing wrong with making mistakes as long as you learn from them, and use that newfound wisdom to make the right decision in the future.

These are the traits for providing the best QA service for our clients. In order to beat the average software QA tester, you must apply any or all of the traits in your day-to-day QA tasks. This will increase your chances to have a successful career as software QA tester.