Let's say I have a piece of software that takes X as input (information about a vehicle), processes it and then returns Y as output (valid transfers at the next stop). The way X is processed is known (including source code available).
[vehicle data] -> [PROCESSING (fusion, filtering)] -> [transfer data]
The processing part involves retrieving ever changing online data (transfers at the given stop). No verified input and the corresponding output is provided. The testing is not about what load the server can take care of but rather if the software that was developed doesn't output garbage.
The input is fused and filtered (individual filters are known in detail; for example excluding a transfer as a valid one due to departure time being before the arrival time of own vehicle) with data from a remote server and a specific output is expected. Due to the dynamic nature of the remote server's content and the inability to access and alter the data it sends (in order to cover various test cases including deliberately inserting content that will try and break the software) I'm currently looking into mimicking the server (so that the data can be changed at will). However the problem remains - how am I supposed to say "This server gives you Y if you input X" and be sure that the mapping between input and output is correct?