Outsource QA: Adding Output to Software Program
Outsource QA demands of yours when you lack resources, time, money, effort, domain knowledge – in other words, everything that is necessary to conduct a really effective testing.
Input redirection. If the program expects that the commands will be entered from the keyboard, it does not mean that it cannot be controlled through the file. You should just make use of the operating system that can redirect input and output (if there is such a possibility, of course,). The essence of such redirection is that the program wrongly thinks that the data are coming from the standard input device (usually it is the keyboard), while in fact they are read by operating system from the file you specify. This process is fully managed by the operating system.
Input redirection is not suitable for all cases, because this method has its limitations. For example, how to generate a delay of 3.2 seconds between keystrokes?
Input via a serial port. Another trick used by testers, like the previous one, consists in substituting the input device so that the program does not notice this change. But this time, the data come not from a file, but from the serial port. There is special software that allows one computer to control the operation of the other connected with it over the network, modem or null modem. In particular, this product is available on the PC market and is called as terminal emulation program. Most software testing service providers have to use this app during their work to achieve the better test execution results.
By сombining two computers via a cable connected to their serial ports, or via the telephone line using modems you can be sitting at one of them to control the second one as if you were working with its keyboard and mouse, and view the screen with information displayed by it. But, most importantly, it is possible to define the actions the user in advance, so that they could be emulated by the software. At the same time the capabilities of such program are much broader than those of an operating system while it enters the data coming from a file. In particular, you can determine any necessary time delays and user response to the behavior of the program under test. In the market there are a number of powerful and expensive systems for testing personal computers according to technologies described, and their capabilities are constantly expanding.
QA outsourcing cannot be replaced with any other service as it allows people to win 3 objectives at one fell swoop: reduce costs, accelerate development and improve quality.