Python APIΒΆ

BugZoo provides a powerful set of Python bindings for its RESTlike API. The Python API is intended to be used as a library when building your own tools (e.g., for program repair, mutation testing, and test generation), or for simply when a better, well-structured means of interacting with historical software bugs is needed to conduct an empirical study.

The REST bindings provided in the Python API expect to connect to a running BugZoo server. The BugZoo server can be launched from the command line using the bugzood executable, as shown below. For more information about the options accepted by bugzood, please consult bugzood --help.

$ bugzood -p 8080

An ephemeral server may also be launched from the Python API via bugzoo.server.ephemeral(), as shown below. The server will be closed (and its associated resources deallocated) upon the destruction of the context (i.e., after the with statement).

with bugzoo.server.ephemeral(port=8080) as client_bugzoo:
  # do cool things

To learn more about connecting to and interacting a BugZoo server, please see the links below.