Implementing test coverage for Glance v2
This is a blueprint for implementing test coverage for the glance v2 API.
Blueprints to be referred to:
In scope: smoke, functional, system integration, whitebox tests
Out of scope: performance, stress, scale
Blueprint information
- Status:
- Not started
- Approver:
- None
- Priority:
- Undefined
- Drafter:
- Mberi Kimpolo
- Direction:
- Needs approval
- Assignee:
- None
- Definition:
- Drafting
- Series goal:
- None
- Implementation:
-
Unknown
- Milestone target:
- None
- Started by
- Completed by
Related branches
Related bugs
Sprints
Whiteboard
Currently fleshing out test cases. Each one should be added a work item.
Maintenance/Feature Backlog:
https:/
Gerrit topic: https:/
Addressed by: https:/
Get schema that represents an image(s) entity
Addressed by: https:/
Images API v2.0 GET images tests
Addressed by: https:/
Images API v2.0 GET image tests
Addressed by: https:/
Images API v2.0 DELETE image tests
Addressed by: https:/
Images API v2.0 GET image/file data tests
Addressed by: https:/
Images API v2.0 DELETE image/tags tests
Addressed by: https:/
POST v2.0/images
Addressed by: https:/
PATCH v2.0/images
Addressed by: https:/
PUT v2.0/images/
Addressed by: https:/
POST v2/images/
Addressed by: https:/
Images API v2.0 DELETE image tests (cont.)
Addressed by: https:/
POST v2.0/images (cont...)
Addressed by: https:/
PATCH v2.0/images (cont...)
Addressed by: https:/
Images API v2.0 GET image tests (cont.)
Addressed by: https:/
PATCH v2.0/images (cont.).
Addressed by: https:/
Refactoring v2.0 image fixtures.
Addressed by: https:/
POST v2.0/images (cont...)
Addressed by: https:/
DELETE v2.0/images/
Addressed by: https:/
DELETE v2.0/images/
Addressed by: https:/
GET v2.0/images/
Addressed by: https:/
GET v2.0/images/
Addressed by: https:/
PATCH v2.0/images/
Addressed by: https:/
POST v2.0/images/
Addressed by: https:/
Images API v2.0 GET image tests (cont...).
Addressed by: https:/
Images API v2.0 PATCH image tests (cont...)
Addressed by: https:/
Images API v2.0 POST tags tests (cont...)
Addressed by: https:/
Images API v2.0 Image Life Cycle Test.
Addressed by: https:/
Images API v2.0 Image Tag Life Cycle Test.
Gerrit topic: https:/
Addressed by: https:/
Update Images v2 fixture to allow Preprod setup
Addressed by: https:/
Update Images v2 fixtures
Addressed by: https:/
Updated and refactored images fixtures
Addressed by: https:/
Update images fixtures and remove test modules
Addressed by: https:/
Add delete image and get image images tests
Addressed by: https:/
Add get image members and get images tests
Addressed by: https:/
Add get images schema and image life cycle tests
Addressed by: https:/
Add image member life cycle and image tag life cycle tests
Addressed by: https:/
Add add image member and add image tag tests
Addressed by: https:/
Add add image tag negative tests
Addressed by: https:/
Add create image and create image negative tests
Addressed by: https:/
Add delete image member and delete image negative tests
Addressed by: https:/
Add delete image tag and delete image tag negative tests
Addressed by: https:/
Add get image file and get image members negative tests
Addressed by: https:/
Add get image negative and get image schema tests
Addressed by: https:/
Add get images filter tests
Addressed by: https:/
Add get images sort tests
Addressed by: https:/
Add get images negative and store image file tests
Addressed by: https:/
Add update image tests
Addressed by: https:/
Add update image member and update image negative
Addressed by: https:/
Add images cleanup
Addressed by: https:/
Images API v2.0 Image Visibility Life Cycle Test
Addressed by: https:/
Add create image and create image negative tests
Addressed by: https:/
Update images fixtures
Addressed by: https:/
Images API V2.0 Update Image Tests
Addressed by: https:/
Updated images fixture
Addressed by: https:/
Images API v2.0 Upload Image File Tests
Addressed by: https:/
Added setUpClass() to create server and image
Addressed by: https:/
Added/Updated setUpClass() to create server,images
Addressed by: https:/
Removed test modules with outdated tests
Addressed by: https:/
Separated delete image positive tests from smoke
Addressed by: https:/
Separated update image positive tests from smoke
Addressed by: https:/
Added setUpClass() to create server and image
Addressed by: https:/
Separated get images positive tests from smoke
Addressed by: https:/
Updated the test tag
Addressed by: https:/
Images API v2.0 Get Image File Tests
Addressed by: https:/
Images API v2.0 Update Image Postive Test
Addressed by: https:/
Images API v2.0 Delete Image Postive Test
Addressed by: https:/
Images v2.0 API Ensure Active Image Location Cannot Be Updated
Addressed by: https:/
Images API v2.0 Image Discovery Of Available Images To User
Work Items
Work items:
[y-charles] Essential - Get json schema document for images: https:/
[luke-wollney] High - Get json schema document for images and verify its response details: DUPLICATE: POSTPONED
[y-charles] Normal - Get json schema document for image: https:/
[luke-wollney] High - Get json schema document for image and verify its response details: DUPLICATE: POSTPONED
[sett-wai] Essential - Get all images: https:/
[sett-wai] Normal - Get images using name filter: https:/
[sett-wai] Normal - Get images using container_format filter: https:/
[sett-wai] Normal - Get images using disk_format filter: https:/
[sett-wai] Normal - Get images using status filter: https:/
[sett-wai] Normal - Get images using visibility filter: https:/
[sett-wai] Normal - Get images using size_min filter: https:/
[sett-wai] Normal - Get images using size_max filter: https:/
[sett-wai] Normal - Get images using min_ram filter: https:/
[sett-wai] Normal - Get images using min_disk filter: https:/
[sett-wai] Normal - Get images using multiple filter: https:/
[sett-wai] Normal - Get images using filter on tags or links: https:/
[sett-wai] Normal - Get images using name sort key: https:/
[sett-wai] Normal - Get images using status sort key: https:/
[sett-wai] Normal - Get images using container_format sort key: https:/
[sett-wai] Normal - Get images using disk_format sort key: https:/
[sett-wai] Normal - Get images using size sort key: https:/
[sett-wai] Normal - Get images using id sort key: https:/
[sett-wai] Normal - Get images using created_at sort key: https:/
[sett-wai] Normal - Get images using updated_at sort key: https:/
[sett-wai] Normal - Get images using sort direction 'asc': https:/
[sett-wai] Normal - Get images using sort direction 'desc': https:/
[sett-wai] Normal - Get images using marker param/pagination: https:/
[sett-wai] Normal - Get images using limit param: https:/
[y-charles] Essential - Register VM image: https:/
[y-charles] High - Register VM image including optional parameters id, visibility and tags: https:/
[y-charles] Normal - Register VM image that is already registered: https:/
[y-charles] Normal - Register VM image without all mandatory parameters: POSTPONED
[y-charles] Normal - Register VM image using special characters for name: POSTPONED
[y-charles] Normal - Register VM image using non-acceptable disk_format: https:/
[y-charles] Normal - Register VM image using non-acceptable container_format: https:/
[y-charles] High - Register VM image including optional user metadata*: https:/
[sett-wai] Essential - Get image: https:/
[musa-baloyi707] Normal - Get image using incorrect url of '/imagess': POSTPONED
[musa-baloyi707] Normal - Get image using method mismatch: POSTPONED
[y-charles] Normal - Get image using blank id: https:/
[musa-baloyi707] Normal - Get image with a request body: POSTPONED
[y-charles] Essential - Update a specified image (name, disk_format and container_format): https:/
[y-charles] Essential - Add additional image property: https:/
[y-charles] Essential - Replace value of an additional image property: https:/
[y-charles] Normal - Update a specified image with optional parameters ( visibility and tags): https:/
[y-charles] Normal - Update image with invalid image property: https:/
[y-charles] High - Add core image property: https:/
[y-charles] High - Remove core image property: https:/
[y-charles] Essential - Remove additional image property: https:/
[y-charles] High - Replace value of core image property: https:/
[y-charles] Normal - Update image using method mismatch of 'PUT': POSTPONED
[y-charles] Normal - Update image using larger size (Invalid??): TODO
[y-charles] Normal - Update image using blank image id: https:/
[y-charles] Normal - Update image with invalid image id: https:/
[y-charles] Normal - Update image using incorrect request body: POSTPONED
[y-charles] Normal - Update image without passing size: POSTPONED
[y-charles] Normal - Update image with data for which data already exists: https:/
[y-charles] Normal - Ensure you cannot update location of active image: DONE
[y-charles] Normal - Update image end-to-end tests (Test Steps??): TODO
[sett-wai] Normal - Delete image: https:/
[sett-wai] Normal - Delete image using invalid image id: https:/
[sett-wai] Normal - Delete image that was already deleted: https:/
[musa-baloyi707] Normal - Delete image using only registered image id (Test Steps??): TODO
[sett-wai] Normal - Delete image that is protected: https:/
[sett-wai] Normal - Delete image that is shared as non-admin: https:/
[musa-baloyi707] Normal - Delete image using incorrect url: POSTPONED
[musa-baloyi707] Normal - Delete image using method mismatch*: POSTPONED
[sett-wai] Normal - Delete image with blank image id: https:/
[musa-baloyi707] Normal - Delete image with incorrect format image id: https:/
[sett-wai] Normal - Delete image that is public as non-admin: https:/
[musa-baloyi707] Normal - Delete image that is shared so that members cannot view it anymore: https:/
[y-charles] Essential - Upload image with image file (content-type: 'application/
[y-charles] Normal - Upload image with image file not with content-type: 'application/
[y-charles] Normal - Upload image with mismatched image file and file format (Test Steps??): TODO
[y-charles] Normal - Upload image using incorrect url of '/images/
[y-charles] Normal - Upload image using method mismatch of 'POST': POSTPONED
[y-charles] Normal - Upload image using larger size:https:/
[y-charles] Normal - Update image using different is_public (Test Steps??): TODO
[y-charles] Normal - Upload image using blank image id: https:/
[y-charles] Normal - Upload image with an invalid image id: https:/
[y-charles] Normal - Upload image without passing size (Test Steps??): TODO
[y-charles] Normal - Upload duplicate image data: https:/
[y-charles] Normal - Ensure you cannot upload location of an active image: POSTPONED
[y-charles] Normal - Upload image end-to-end tests (Test Steps??): TODO
[sett-wai] Essential - Download binary image data: https:/
[musa-baloyi707] Normal - Download image data with incorrect content-type: POSTPONED
[musa-baloyi707] Normal - Download image data using incorrect: POSTPONED
[musa-baloyi707] Normal - Download image data using blank id: https:/
[musa-baloyi707] Normal - Download image data that doesn't exist yet: https:/
[musa-baloyi707] Normal - Download image using request body: POSTPONED
[musa-baloyi707] Normal - Download image end-to-end test (Test Steps??): TODO
[y-charles] Essential - Add a valid tag to a valid image: DONE
[y-charles] Normal - Add more than one tag to valid image: https:/
[y-charles] Normal - Add a tag to valid image which was already added: https:/
[y-charles] Normal - Add a tag to invalid image: https:/
[y-charles] Normal - Add a tag to blank image: https:/
[y-charles] Normal - Add empty tag to valid image: https:/
[y-charles] Normal - Add invalid tag(with special chars) to valid image: https:/
[y-charles] Normal - Add tag using incorrect url of '/images/
[y-charles] Normal - Add tag using method mismatch of 'PUT': POSTPONED
[y-charles] Normal - Add tag using request body: POSTPONED
[sett-wai] Essential - Delete valid tag from valid image: https:/
[musa-baloyi707] Normal - Delete tag from image using invalid id: https:/
[musa-baloyi707] Normal - Delete tag from image using blank id: https:/
[musa-baloyi707] Normal - Delete empty tag from valid image: https:/
[musa-baloyi707] Normal - Delete non-existent tag from valid image: https:/
[musa-baloyi707] Normal - Delete invalid tag from valid image: https:/
[musa-baloyi707] Normal - Delete tag using incorrect url: POSTPONED
[musa-baloyi707] Normal - Delete tag using method mismatch: POSTPONED
[musa-baloyi707] Normal - Delete tag usign request body: POSTPONED
[y-charles] - Essential - Image Lifecycle CRUD: https:/
[y-charles] - Essential - Image Tag Lifecycle CRUD: https:/