Back to Mongo

Smoke Test Suites

buildscripts/smoke_tests/README.md

3.6.17-windows-splunk-v35.0 KB
Original Source

Smoke Test Suites

Smoke test suites are suites that are meant to be run locally during iterative development as a way to get a decent sense of whether a change to a given component has not broken the core functionality of that component. They are not meant to replace running a patch build before merging in a change, but are a way to get relatively quick feedback locally.

Available Smoke Test Suites

Below is information about the smoke test suites available for each team and how to run them.

Catalog And Routing

Tests are tagged with catalog-and-routing. To run:

bazel test --test_output=summary --test_tag_filters=-intermediate_debug,catalog-and-routing //...

Server Integration

Tests are tagged with server-integration-smoke. To run:

bazel test --test_output=summary --test_tag_filters=-intermediate_debug,server-integration-smoke //...

Replication

The integration tests for the smoke test are tagged with replication-smoke. To run:

bazel test --test_tag_filters=replication-smoke //...

This should be run in conjunction with the unit tests, which can be run with the following:

bazel test --test_output=summary --test_tag_filters=-intermediate_debug //src/mongo/db/repl/...

To run both combined:

bazel test --test_output=summary --test_tag_filters=mongo_unittest,replication-smoke,-intermediate_debug //src/mongo/db/repl/... //buildscripts/smoke_tests/...

Server Programmability

Tests are tagged with server-programmability. To run:

bazel test --test_output=summary --test_tag_filters=-intermediate_debug,server-programmability //...

Storage Execution

The smoke test suites for storage execution are divided up into components. The smoke test suite for all of the components that storage execution owns can be run with the following:

bazel test --test_output=summary  --test_tag_filters=-intermediate_debug,server-bsoncolumn,server-collection-write-path,server-external-sorter,server-index-builds,server-key-string,server-storage-engine-integration,server-timeseries-bucket-catalog,server-tracking-allocators,server-ttl //...

The individual components owned by storage execution are as follows:

Server-BSONColumna

The unit tests for the server-bsoncolumn component can be run with the following:

bazel test --test_output=summary --test_tag_filters=-intermediate_debug,server-bsoncolumn //...

There are currently no smoke test integration tests for this component.

Server-Collection-Write-Path

The unit and integration tests for the server-collection-write-path component can be run with the following:

bazel test --test_output=summary --test_tag_filters=-intermediate_debug,server-collection-write-path //...

Server-External-Sorter

The unit tests for the server-external-sorter component can be run with the following:

bazel test --test_output=summary --test_tag_filters=-intermediate_debug,server-external-sorter //...

There are currently no smoke test integration tests for this component.

Server-Index-Builds

The unit and integration tests for the server-index-builds component can be run with the following:

bazel test --test_output=summary --test_tag_filters=-intermediate_debug,server-index-builds //...

Server-Key-String

The unit tests for the server-key-string component can be run with the following:

bazel test --test_output=summary --test_tag_filters=-intermediate_debug,server-key-string //...

There are currently no smoke test integration tests for this component.

Server-Storage-Engine-Integration

The unit and integration tests for the server-storage-engine-integration component can be run with the following:

bazel test --test_output=summary --test_tag_filters=-intermediate_debug,server-storage-engine-integration //...

Server-Timeseries-Bucket-Catalog

The unit tests for the server-timeseries-bucket-catalog component can be run with the following:

bazel test --test_output=summary --test_tag_filters=-intermediate_debug,server-timeseries-bucket-catalog //...

There are currently no smoke test integration tests for this component.

Server-Tracking-Allocators

The unit tests for the server-tracking-allocators component can be run with the following:

bazel test --test_output=summary --test_tag_filters=-intermediate_debug,server-tracking-allocators //...

There are currently no smoke test integration tests for this component.

Server-TTL

The unit and integration tests for the server-ttl component can be run with the following:

bazel test --test_output=summary --test_tag_filters=-intermediate_debug,server-ttl //...

Streams

The tests for the streams component can be run with the following:

bazel test --test_output=summary --test_tag_filters=-intermediate_debug,streams-smoke --streams_release_build=True //...

When running smoke_tests.py, also include --streams_release_build=True:

python buildscripts/smoke_tests/smoke_tests.py streams --//bazel/config:streams_release_build=True