Software tests have to be repeated often during development cycles to ensure quality. Every time source code is modified software tests should be repeated. For each release of the software it may be tested on all supported operating systems and hardware configurations. Manually repeating these tests is costly and time consuming. Once created, automated tests can be run over and over again at no additional cost and they are much faster than manual tests. Automated software testing can reduce the time to run repetitive tests from days to hours. A time savings that translates directly into cost savings.


“I don't think that using the 'test automation' label in itself is wrong though, as long as people are aware of what is being automated (checks) and what is not (tests). This difference between testing and checking also provides an argument as to why manual testing as an activity will not cease to exist, at least not for the foreseeable future: testing activities cannot be automated!”
Manually testing each build is an unacceptable time drain. Automated software testing allows QA to spend most of its time outside of SDLC execution time, allowing testing to run unattended 24×7! With the press of a button, regression testing can be completed without the risk of human error from executing boring, repetitive, similar test cases, ensuring that your latest build breaks nothing. Easy scalability allows increased end-to-end coverage with barely any impact to your schedule, and then the test results can be automatically sent to test management tools for analysis as you see fit.
Automation isn’t necessarily meant to replace people. Some of that will happen as a result of removing steps that require human interaction, but the focus and advantages are found in productivity, consistency, and efficiency. This is the paradox of automation—as you become efficient using automation, human involvement becomes both more important and less frequent.
Test automation tools can be expensive, and are usually employed in combination with manual testing. Test automation can be made cost-effective in the long term, especially when used repeatedly in regression testing. A good candidate for test automation is a test case for common flow of an application, as it is required to be executed (regression testing) every time an enhancement is made in the application. Test automation reduces the effort associated with manual testing. Manual effort is needed to develop and maintain automated checks, as well as reviewing test results.
Niven Narain, a cancer researcher, provides a great example. In 2005 he cofounded Berg, a start-up in Framingham, Massachusetts, to apply artificial intelligence to the discovery of new drugs. Berg’s facility has high-throughput mass spectrometers that run around the clock and produce trillions of data points from their analysis of blood and tissue, along with powerful computers that look for patterns suggesting that certain molecules could be effective. “The last thing you want to do now,” Narain told a reporter in March 2015, “is have a hundred biochemists…going through this data and saying, ‘Oh, I kind of like this one over here.’” But he also employs a hundred biochemists. Their objective is not to crunch all those numbers and produce a hypothesis about a certain molecule’s potential. Rather, they pick up at the point where the math leaves off, the machine has produced a hypothesis, and the investigation of its viability begins.
Automation isn’t necessarily meant to replace people. Some of that will happen as a result of removing steps that require human interaction, but the focus and advantages are found in productivity, consistency, and efficiency. This is the paradox of automation—as you become efficient using automation, human involvement becomes both more important and less frequent.
Before that happens, anyone who works with code may want to consider the benefits enjoyed by self-automation. They’re a sort of test case for how automation could deliver a higher quality of life to the average worker, albeit an imperfect one. “The problem is for automation to work, it needs to be democratized,” Woodcock told me. “It’s a step forward that it’s not a corporate manager who’s delivering automation. It’s still not a democratic process.” Self-automators are acting alone, deciding when and how to replace their own job with code. Ideally, automation decisions would happen collectively, with colleagues’ and peers’ input, so the gains could be evenly distributed.

The automatic telephone switchboard was introduced in 1892 along with dial telephones.[35] By 1929, 31.9% of the Bell system was automatic. Automatic telephone switching originally used vacuum tube amplifiers and electro-mechanical switches, which consumed a large amount of electricity. Call volume eventually grew so fast that it was feared the telephone system would consume all electricity production, prompting Bell Labs to begin research on the transistor.[36]
By automating the onboarding process, you can convert sales leads into corporate clients and update the lead status in the customer relationship management (CRM) program. This could trigger the client onboarding checklist in the software, with new client information automatically loaded into the new checklist. Your company could automatically send onboarding materials to the client via email and notify a team member on what they need to do for the new client with instructions from the checklist. The new process is more efficient and communicates without error to the team member.
Each new development in the history of powered machines has brought with it an increased requirement for control devices to harness the power of the machine. The earliest steam engines required a person to open and close the valves, first to admit steam into the piston chamber and then to exhaust it. Later a slide valve mechanism was devised to automatically accomplish these functions. The only need of the human operator was then to regulate the amount of steam that controlled the engine’s speed and power. This requirement for human attention in the operation of the steam engine was eliminated by the flying-ball governor. Invented by James Watt in England, this device consisted of a weighted ball on a hinged arm, mechanically coupled to the output shaft of the engine. As the rotational speed of the shaft increased, centrifugal force caused the weighted ball to be moved outward. This motion controlled a valve that reduced the steam being fed to the engine, thus slowing the engine. The flying-ball governor remains an elegant early example of a negative feedback control system, in which the increasing output of the system is used to decrease the activity of the system.
Business process automation (BPA) is defined as the automation of complex business processes and functions beyond conventional data manipulation and record-keeping activities, usually through the use of advanced technologies. It focuses on “run the business” as opposed to “count the business” types of automation efforts and often deals with event-driven, mission-critical, core processes. BPA usually supports an enterprise’s knowledge workers in satisfying the needs of its many constituencies.
×