As part of the TestMySearch.com project, I am creating a “virtual shopper” system that simulates the behavior of a real user in an online store: it starts with an abstract goal (for example, “something bright and sexy for the gym”), turns it into a specific search query, performs the search on the site, and depending on the results, may either continue browsing or, with a certain probability, reformulate the query if the findings do not match the original goal; the system then evaluates the pages for their alignment with the initial idea, opens product cards, randomly changes parameters such as color or size, makes decisions about adding to the cart and placing an order, and may also leave the site, which allows generating many sessions similar to real ones overnight for testing search, filters, and recommendations even before live users arrive.
The system is fully automatic. That is, the browser in the video opens by itself, the search field appears by itself (i.e., independent of the site), the system itself concocts the text based on that very initial goal, then the facets and search results are displayed, which may also be in a form unpredictable to the system — but it still understands what is what, and makes decisions about whether to rephrase the query, select a facet or click on a search result. There is a certain probability that the virtual user will leave the site. If the query is reformulated, for example, this virtual user does not repeat queries that have already led to empty or irrelevant results, so within the session there is “memory”.
