37 lines
1.7 KiB
Markdown
37 lines
1.7 KiB
Markdown
# Testing
|
|
|
|
Most tests for MongoDB are run through resmoke, our test runner and orchestration tool.
|
|
The entry point for resmoke can be found at `buildscripts/resmoke.py`
|
|
|
|
## run
|
|
|
|
The run subcommand can run suites (list of tests and the MongoDB topology and
|
|
configuration to run them against), and explicitly named test files.
|
|
|
|
A single suite can be specified using the `--suite` flag, and multiple suites
|
|
can be specified by providing a comma separated list to the `--suites` flag.
|
|
|
|
Additional parameters for the run subcommand can be found on the help page,
|
|
accessible by running `buildscripts/resmoke.py run --help`
|
|
|
|
Additional documentation on our suite configuration can be found on the
|
|
[Suites configuration file page](../suites.md)
|
|
|
|
### Testable Installations (`--installDir`)
|
|
|
|
resmoke can run tests against any testable installation of MongoDB (such
|
|
as ASAN, Debug, Release). When possible, resmoke will automatically locate and
|
|
run with a locally built copy of MongoDB Server, so long as that build was
|
|
installed to a subdirectory of the root of the git repository, and there is
|
|
exactly one build. In other situations, the `--installDir` flag, passed to run
|
|
subcommand, can be used to indicate the location of the mongod/mongos binaries.
|
|
|
|
As an alternative, you may instead prefer to use the resmoke.py wrapper script
|
|
located in the same directory as the mongod binary, which will automatically
|
|
set `installDir` for you.
|
|
|
|
Note that this wrapper is unavailable in packaged installations of MongoDB
|
|
Server, such as those provided by Homebrew, and other package managers. If you
|
|
would like to run tests against a packaged installation, you must explicitly
|
|
pass `--installDir` to resmoke.py
|