Chapter 3. Testing and Certifying the Port

Table of Contents

Types of Tests for Berkeley DB
Modifying the Tests
Running the Tests
Reviewing the Results of the Tests
Integrating Changes into the Berkeley DB Source Code
Certifying a Port of Berkeley DB

There are several different types of tests available for validating your port of Berkeley DB as discussed in Types of Tests for Berkeley DB. Testing your port involves:

Types of Tests for Berkeley DB

There are two types of tests available for testing your port of Berkeley DB:

  • The C Tests for Berkeley DB

    There are three types of C tests for Berkeley DB. Each of these is in its own directory:

    • test_os contains files that test the system primitives. See the test_os/Test_OS_Technical_Detail file for detailed information on these tests (for example, how each function is tested).

    • test_mutex contains files that test the use of mutexes in Berkeley DB.

    • test_micro contains the C tests that exercise the most common code paths, but it is not intended to be an exhaustive Test Suite. Additionally, it tests the different versions of Berkeley DB (including the new port) against each other. The test_micro tests can either be run in a shell or as simple C tests.

  • The Berkeley DB Test Suite

    The test directory contains the Berkeley DB Test Suite that tests all of the code in Berkeley DB. Using the Test Suite involves using Tool Command Language (Tcl) version 8.4 or later. Running the standard version of the Test Suite executes tests the major functionality of Berkeley DB. A more exhaustive version of the Test Suite runs all the tests several more times, testing encryption, replication, and different page sizes.