A major concern for developers is how to guarantee consistent, high levels of application reliability and availability for the business after each software change. The only sure method for achieving this is through repeat testing. Tests are vital, but can be costly, time consuming, tedious and error prone when performed manually. In most businesses testing suffers when deadlines approach. The business imperative to deliver new application functions in smaller increments more often and with higher quality makes good testing even more imperative.
Many businesses use third party vendor software packages. Software vendors typically test new releases in their test environments using their test scenarios but how can they know how our environment may have changed recently? Without the ability to test in our environment we could be introducing errors in the software package or our in-house applications after we install one of their releases of service packs.