Things to consider:
- Configuration Files
- Test files
- Multiple connections
- Parallel testing
- Failure handling
Requirements:
Server Connection
- Ability to send and read command results
- File verification (STOR command creates and stores a file)
Telnet
- Connection which can be identified by a number and read/written to
- Connection port is likely dynamic to server connection command
Testing
- Output state used for comparing results.
- May not be directly possible since there are things like ports that are not directly comparable
- Perhaps ignore setup strings
Configuration
- Ability to rerun each test using various different configurations
Test Format & Multiple Connections
<clientnum>:<input>
Client Number - Multiple telnet clients can interface with the FTP server- Managing these clients requires us to map each number with a “subscriber”
- Map # -> Connection
Requirement: Telnet connection which can be identified by a number and read/written to Requirement: Test Reader
Configuration Files
- Can run every possible configuration test with the test file
Parallel Testing
- We need to be able to compare binaries with the “clean” binary.
- Singular string or state result which can be used to compare with other binary output Requirement: output state used for comparing results.