mongo/buildscripts/resmokelib/testing/fixtures/README.md

2.1 KiB

Fixtures

Fixtures define a specific topology that tests run against.

Supported Fixtures

Specify any of the following as the fixture in your Suite config:

  • BulkWriteFixture - Fixture which provides JSTests with a set of clusters to run tests against.
  • ExternalFixture - Fixture which provides JSTests capability to connect to external (non-resmoke) cluster.
  • ExternalShardedClusterFixture - Fixture to interact with external sharded cluster fixture.
  • MongoDFixture - Fixture which provides JSTests with a standalone mongod to run against.
  • MongoTFixture - Fixture which provides JSTests with a mongot to run alongside a mongod.
  • MultiReplicaSetFixture - Fixture which provides JSTests with a set of replica sets to run against.
  • MultiShardedClusterFixture - Fixture which provides JSTests with a set of sharded clusters to run against.
  • ReplicaSetFixture - Fixture which provides JSTests with a replica set to run against.
  • ShardedClusterFixture - Fixture which provides JSTests with a sharded cluster to run against.
    • Used when the MongoDB deployment is started by the JavaScript test itself with MongoRunner, ReplSetTest, or ShardingTest.
  • YesFixture - Fixture which spawns several yes executables to generate lots of log messages.

Interfaces

  • Fixture - Base class for all fixtures.
  • MultiClusterFixture - Base class for fixtures that may consist of multiple independent participant clusters.
    • The participant clusters can function independently without coordination, but are bound together only for some duration as they participate in some process such as a migration. The participant clusters are fixtures themselves.
  • NoOpFixture - A Fixture implementation that does not start any servers.
  • ReplFixture - Base class for all fixtures that support replication.