Skip to content
forked from ceph/s3-tests

Compatibility tests for S3 clones

License

Notifications You must be signed in to change notification settings

acoooder/s3-tests

This branch is 434 commits behind ceph/s3-tests:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

4460b08 · Oct 7, 2019
Sep 10, 2019
Oct 7, 2019
Jul 26, 2011
Apr 4, 2011
Jan 16, 2019
Jul 2, 2019
Jun 15, 2015
Jan 16, 2019
Apr 5, 2019
Jan 16, 2019
Jul 8, 2011

Repository files navigation

S3 compatibility tests

This is a set of unofficial Amazon AWS S3 compatibility tests, that can be useful to people implementing software that exposes an S3-like API. The tests use the Boto2 and Boto3 libraries.

The tests use the Nose test framework. To get started, ensure you have the virtualenv software installed; e.g. on Debian/Ubuntu:

sudo apt-get install python-virtualenv

and then run:

./bootstrap

You will need to create a configuration file with the location of the service and two different credentials. A sample configuration file named s3tests.conf.SAMPLE has been provided in this repo. This file can be used to run the s3 tests on a Ceph cluster started with vstart.

Once you have that file copied and edited, you can run the tests with:

S3TEST_CONF=your.conf ./virtualenv/bin/nosetests

You can specify which directory of tests to run:

S3TEST_CONF=your.conf ./virtualenv/bin/nosetests s3tests.functional

You can specify which file of tests to run:

S3TEST_CONF=your.conf ./virtualenv/bin/nosetests s3tests.functional.test_s3

You can specify which test to run:

S3TEST_CONF=your.conf ./virtualenv/bin/nosetests s3tests.functional.test_s3:test_bucket_list_empty

To gather a list of tests being run, use the flags:

-v --collect-only

Some tests have attributes set based on their current reliability and things like AWS not enforcing their spec stricly. You can filter tests based on their attributes:

S3TEST_CONF=aws.conf ./virtualenv/bin/nosetests -a '!fails_on_aws'

Most of the tests have both Boto3 and Boto2 versions. Tests written in Boto2 are in the s3tests directory. Tests written in Boto3 are located in the s3test_boto3 directory.

You can run only the boto3 tests with:

S3TEST_CONF=your.conf ./virtualenv/bin/nosetests -v -s -A 'not fails_on_rgw' s3tests_boto3.functional

About

Compatibility tests for S3 clones

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.7%
  • Shell 0.3%