Open POSIX Test Suite: A GPL Open Source Project

Project News

June 03, 2005 Version 1.5.1 Released
PTS-1.5.1 has a plenty of AIO interface test additions and bug-fixes by Sebastien Decugis and Laurent Vivier. Also there are a lot of bug fixes by other people. Thanks to Sebastien Decugis and other people for continued support and contributions. This release has been tested on glibc-2.3.3 and kernel 2.6.10 with libposix-aio-0.3. Please see the release page for downloads and more information. The test result for this release can be found here: test results - PTS 1.5.1, Kernel 2.6.10-PAIO, ia32 .

December 17, 2004 Version 1.5.0 Released
A much anticipated release with plenty of interface test additions and bug-fixes. Added AIO test suite by Laurent Vivier. Special thanks to Sebastien Decugis and Ulrich Drepper for continued support and contributions. Also exciting news about OSDL and Bull integrating PTS into OSDL's Scalable Test Platform (STP).
For more, click here: OSDL and Bull Cooperate on Open Source POSIX test suite
Go here for Downloads and Release information.
Go here for Notes and Changelog..

July 06, 2004 Version 1.4.3 Released
Here goes posixtest-1.3. Besides many bug fixes, this release includes new pthread test cases (conformance, functional, stress) by Sebastien Decugis and Abhijeet Bisain. Special thanks goes to people who made contributions. And we are glad that PTS is helping kernel, library and application developers and OSDs on their POSIX related work. Please see the release page for downloads and more information.

May 27, 2004 Version 1.4.2 Released
Psixtestsuite-1.4.2 adds several pthread test cases by Sebastien Decugis. Also there are a lot of bug fixes by Ulrich Drepper and other people. This suite has been run on latest glibc and linux kernel 2.6.5. All the failed cases has been analyzed. Please see the release page for downloads and more information.

May 01, 2004 Version 1.4.1 Released
posixtestsuite-1.4.1 fixes a bunch of bugs in 1.4.0 version. This release has been tested on glibc-2004-04-29 cvs pull (NPTL enabled) and linux-2.6.5-mm6 kernel.It is noted that "POSIX Message Queues" has been integrated into linux kernel and glibc. Please see the release page for downloads and more information. The test result for this release can be found here: test results - PTS 1.4.1, Kernel 2.6.5-mm6, ia32 .

April 15, 2004 Version 1.4.0 Released
POSIX Test Suite 1.4.0 includes more pthread conformance test cases. Now we have test cases covering almost all pthread APIs. Conformance test cases for options like CPT, TCT, TMR are also added. There are also a lot of bug fixes made from the previous 1.3.0 version (thanks for Ulrich Drepper's patches and to everyone who made contributions). Please see the release page for downloads and more information.


Project Goals

The Open POSIX* Test Suite is an open source test suite with the goal of performing conformance, functional, stress, and performance testing of the functions described in the IEEE Std 1003.1-2001 System Interfaces specification. Eventual testing of the full specification is desired.

The test suite will be developed independent of particular implementations of the POSIX APIs. It will be configurable to test any implementation by specifying include and library information.

The project aims for creation of tests that depend purely on POSIX APIs, thus leaving open the possibility of OS independence. However, initial development is on Linux.

The project aims for compliance with Linux kernel coding standards, with code primarily written in ANSI C (1999).



The test suite divides tests into several categories: Conformance, Functional, Stress, Performance, and Speculative.
  • Conformance tests involve closely reading the POSIX spec and recording assertions about correct behavior. Each test case is associated with a particular assertion.
  • Functional tests try to use the interfaces in real-world scenarios, and cover behavior that is reasonably expected, if not specifically called out, in the POSIX spec.
  • Stress tests put the interfaces through the paces by using large numbers of system objects, or large amounts of data, or under external conditions such as low memory or high CPU utilization.
  • Performance tests attempt to benchmark the performance of interfaces or sets of interfaces for comparison of implementations.
  • Speculative tests arise when the POSIX spec is unclear about a certain behavior where differences in implementations can affect the application. These tests attempt to expose differences in implementations so that they can be tracked and the behaviors can be compared for consistency across revisions.

These test categories are ranked by priority. Conformance tests are the most measurable, with a fairly definite sense of 'complete'. The other tests are more about cleverness, or incidental observations of behavior. Our strategy for conformance tests is well-defined; functional and stress are being prototyped; speculative is a recent idea and just being considered; performance has not yet been attempted at all.

The "Framework"
The GNU Automake/Autoconf suite is hoped to eventually be used to manage the configuration, building, and execution of the test cases. This choice of portable tools should make the test suite usable on any POSIX operating system.

Help Wanted!

Join our development mailing list, posixtest-discuss!
  • Contribute test cases
  • Review test cases
  • Run the suite on different implementations
  • Report bugs in tests
  • Report bugs in implementations
  • Start work on a new area of the POSIX specification
  • Review our approach

Wish List

  • Functional/Stress tests in the timers, threads, signals, semaphores, and message queues areas
  • Testing of additional areas of the POSIX spec
  • Tests are built/run using GNU Automake/Autoconf

Current Work

Conformance tests are being developed in:
  • Threads (THR)
  • Message Queues (MSG)
  • Semaphores (SEM)
  • Signals
Conformance tests are being used to test known implementations in:
  • Threads (THR)
  • Semaphores (SEM)
  • Signals
  • Timers (TMR/CS)
The Open POSIX Test Suite is not affiliated with the IEEE or The Open Group.

* POSIX ® is a registered trademark of the IEEE. Logo   Valid HTML 4.01!

Last modified: