9"))
76
ServerCloseConnection()
77
ClientReceive_Start()
78
ClientReceive_Finish(double("99.9"))
79
ServerClose()
ClientClose()
8
ServerBind()
19
ServerListen()
20
ClientSocket()
21
ClientConnect()
22
ServerAccept()
29
ClientSend()
64
ServerReceive()
65
ServerSend(double("100"))
66
ClientReceive_Start()
67
ClientReceive_Finish(double("100"))
68
ServerCloseConnection()
69
ServerClose()
ClientClose()
14
ClientSocket()
15
ServerBind()
16
ServerListen()
17
ClientConnect()
18
ServerAccept()
30
ServerSend(double("99.9"))
31
ServerCloseConnection()
60
ServerClose()
61
ClientReceive_Start()
62
ClientReceive_Finish(double("99.9"))
ClientClose()
Figure 8.1. Client/server: test suite generated from contract model program.
8.2 Traces and terms
In order to write the test harness that connects the implementation to the test runner,
you must understand how test suites are represented in the files written by the test
generator.
140 Testing Closed Systems
0
1
Test(0)
18
2
ServerSocket()
3
ServerBind()
4
ServerListen()
5
ClientSocket()
6
ClientConnect()
7
ServerAccept()
8
ServerSend(double("100"))
9
ClientReceive_Start()
10
ClientReceive_Finish(double("100"))
11
ServerSend(double("99.9"))
12
ClientReceive_Start()
13
ClientReceive_Finish(double("99.9"))
14
ClientSend()
15
ServerReceive()
16
ClientClose()
17
ServerCloseConnection()
ServerClose()
Figure 8.
Pages:
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207