Skip to main content
Tweeted twitter.com/StackSQA/status/938910566277636097
Added additional info regarding proposed answer
Source Link

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?

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).

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?

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?

Added additional info regarding proposed answer
Source Link

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).

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 detaildetail; 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?

Let's say I have a piece of software that takes X as input, processes it and then returns Y as output. The way X is processed is known (including source code available).

The processing part involves retrieving ever changing online data. 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) 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?

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).

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?

Added additional info regarding proposed answer
Source Link

Let's say I have a piece of software that takes X as input, processes it and then returns Y as output. The way X is processed is known (including source code available).

The processing part involves retrieving ever changing online data. 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) 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?

Let's say I have a piece of software that takes X as input, processes it and then returns Y as output.

The processing part involves retrieving ever changing online data. No verified input and the corresponding output is provided.

The input is fused and filtered 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?

Let's say I have a piece of software that takes X as input, processes it and then returns Y as output. The way X is processed is known (including source code available).

The processing part involves retrieving ever changing online data. 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) 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?

Source Link
Loading