...

/

Introduction to Software Testing

Introduction to Software Testing

Learn what software testing is and how to perform it in the Ruby language.

We'll cover the following...

What is software testing?

The definition of software testing is quite broad because of many testing methodologies. Broadly, testing makes sure software works as intended.

Imagine a hardware engineer just built the radio from a set of components and wants to understand if it works or not. She’ll probably use so-called “smoke testing,” where we quickly turn the power supply on and off to see if there isn’t any smoke, to find if there are any fundamental failures. If there is no smoke, we can proceed to the “happy path” testing, turn on the radio, and try to tune it into some radio station to check if there is any sound.

Before the radio goes for production, there can be other tests—for example, load-testing to measure electricity consumption. The radio probably should be power-efficient, so people won’t need to change batteries every day. Even if the radio works and there is a sound, the battery drain problem can be a marketing failure, and the product won’t succeed.

Testing types

In software, there are numerous testing methodologies, such as manual, automated, unit, ...