A very well known quote, written by Heraclitus, states "The eyes are more exact witnesses than the ears". It simply means that eyes capture more and precise details than the ears. The story of visual testing revolves around the same concept.
It's a technique or methodology to capture the whole testing process in a visual or a recorded form to assist the developers in understanding the testing activity. This makes the developer independent of test reports and enables them to extract informative details as per their requirements and needs at their own ease. It aims to improve and strengthen the communication between a tester and a developer.
The main idea behind visual testing is to make anybody visualize the complete testing activity, carried out, so that he/she can readily and easily understands the what, how, when, where, who, why, how much, how many and other such things of the testing phase. Showing something, rather describing it may prove to be more effective. The chief motive is to empower the developers with the ability to examine the carried out testing process in order to gain the accurate and precise information about the software failures at certain points from their point of view.
Visual testing may be implemented for any development model or testing technique. However, it may largely benefit the agile model of software development, where the frequent interaction among the teams and client is the persistent scenario.
In the agile software development process, teams including client or stakeholders, involved in the development, needs to collaborate on a frequent basis, after each cycle. Therefore, it requires a proper and effective medium, to communicate their and access other views, opinions and suggestions.
Thus, visual testing may work as a tool to record the whole process with the help of cams for video recording and microphones for the audio, thereby, enabling each team to access the recording, and freeing themselves from the complete dependency on the communication channel.
Apart from the agile, it may also be consider effective, for the following testing types
Exploratory testing is a more structured type of testing than the ad-hoc, but both of them are informal ways of testing carried out in an impromptu manner i.e. they do not require any prior planning or documentation.
As both these types, are also considered as a learning and adaptable approach, where a tester, solely depends on his skills and experience, to perform testing, visual testing may provide great advantage to the testers, to replicate and report failures easily in the absence of documentation work.
Generally, acceptance testing is all about testing of software product by the client or stakeholder or small group of users, to check the acceptability & readiness of the software in the market, for its release. Visual testing may play an important role in capturing the user scenarios, thinking and way of using the software product under diverse environment. This eases the task of developers to just go through recording, and accordingly bring changes to the software product, to fulfil the acceptance criteria.
Similarly, visual testing may prove its worth in usability testing, also.
It's a good idea, to record the automated execution of the test script, while remaining away from it. This enables tester to find out what happened during the automation in his/her absence.