From: pimjager Date: Sat, 14 Nov 2015 15:47:38 +0000 (+0100) Subject: Add description of what is tested X-Git-Url: https://git.martlubbers.net/?a=commitdiff_plain;h=db1fbfe4d6cc82426a0b96f51baaeddfafa67ed5;p=tt2015.git Add description of what is tested --- diff --git a/a2/1cases.tex b/a2/1cases.tex index d339dfa..14900c9 100644 --- a/a2/1cases.tex +++ b/a2/1cases.tex @@ -85,6 +85,16 @@ series of tests asses the correctness of the implementation with regards to the TCP specification. These tests are specified in Table~\ref{tbl:testpairs}. The test cases aim to cover the most interesting parts of the TCP specification. +In this test suite the behavior of the outwards (network) interface of the SUT +is assessed. This is, the behavior of the SUT as +observed by another system on the network trying to communicate with (a system +running on the same host as the SUT using) the SUT. This is achieved by running +man +echo-server on the system which runs the SUT (a virtual machine) which +echos back all messages received to the sender. The test scripts will send +packets to the echo-server and then checks the received +response to asses whether or not the SUT is preforming as expected. + To cover the TCP specification as complete as possible while still maintaining a feasible test suite the tests are divided into equivalence partitions. Below these partitions are given. @@ -129,18 +139,7 @@ these partitions are given. \end{enumerate} These partitions were chosen since they correspond to key parts of the TCP -specification. A single request consists of a number of packets that sent a -to the \emph{echo-server} and back. The TCP specification state that such a -transaction requires the following messages. - -\begin{center} - Script $-$ SYN $A$ $\rightarrow$ SUT \\ - Script $\leftarrow$ SYN-ACK $(A+1)$ $B$ $-$ SUT \\ - Script $-$ ACK $(A+1)$ $(B+1)$ $\rightarrow$ SUT \\ - Script $-$ ACK-PUSH $(A+1)$ $(B+2)$ \emph{msg} $\rightarrow$ SUT \\ - Script $\leftarrow$ ACK $(A+2+msg_{length})$ $(B+3)$ $-$ SUT \\ - Script $\leftarrow$ ACK-PUSH $(A+2+msg_{length})$ $(B+3)$ \emph{msg} $-$ SUT -\end{center} +specification. % % één na laatste packket, moet dit B+3 of B+2 zijn? @@ -164,13 +163,26 @@ The SUT should exhibit the same behavior and accept packets where these type of bit errors occur. TCP guarantees that segments are delivered \emph{in order} -,even when they are received +, even when they are received out of order and that missing segments are resend. The SUT should exhibit the same behavior. If segments are received out of order it should either reassemble them when the missing packet has arrived or request them to be resend when the Missing segments should be re-requested (by ACK-ing the correct sequence number). +A single request consists of a number of packets that sent a +to the \emph{echo-server} and back. The TCP specification state that such a +transaction requires the following messages. + +\begin{center} + Script $-$ SYN $A$ $\rightarrow$ SUT \\ + Script $\leftarrow$ SYN-ACK $(A+1)$ $B$ $-$ SUT \\ + Script $-$ ACK $(A+1)$ $(B+1)$ $\rightarrow$ SUT \\ + Script $-$ ACK-PUSH $(A+1)$ $(B+2)$ \emph{msg} $\rightarrow$ SUT \\ + Script $\leftarrow$ ACK $(A+2+msg_{length})$ $(B+3)$ $-$ SUT \\ + Script $\leftarrow$ ACK-PUSH $(A+2+msg_{length})$ $(B+3)$ \emph{msg} $-$ SUT +\end{center} + \bigskip Partitions 2 to 6 are tested using pairwise testing to keep the number of test