Client/Server - Concurrent programming issues
User's Guide
347
19 I
NTRODUCTION
TO
C
LIENT
/S
ERVER
T
ESTING
Concurrent programming issues
·
To exercise certain database functions that are present in a GUI that runs
directly on the server machine and is not a client application. For
example, administrative functions used for setting up the database.
·
To set the server database to a known state.
·
To verify an application's database results without using the application.
·
To read information from the database to use as input to a testcase.
SilkTest can drive a server application's GUI by means of the SilkTest Agent
exactly as it drives a client application. In addition, QA DBTester, a
companion product to SilkTest, provides direct access, using SQL, from a test
script to any database supported by ODBC drivers. These database functions
enable you to read and write database records without using the client
application. Thus you can verify client test results without assuming the
ability of the client to do that verification.
In addition to using the SQL functions in your tests, you can also use these
functions to help manage your testing process as follows:
·
Maintain a bug database, updating it with the results of your testing.
·
Manage your test data in a database instead of in a text file.
The database functions, among other things, allow you to connect to a
database, submit an SQL statement, read data from the selected record(s) if
the SQL statement was SELECT, and subsequently disconnect from the
database. About a dozen of these functions allow you to access your
database's catalog tables.
The QA DBTester functions that support these operations are documented in
online Help. They begin with the letters "DB_".
Concurrent programming issues
Note When you create tests for a stand-alone (local) application,
you can do many of them using SilkTest's recording capabilities.
When you generate testcases for a multi-application or client/server
environment, you will have to do some 4Test coding to specify the