1
testing
ssmmxx edited this page 2026-06-14 15:02:12 +00:00

Test strategy

The test strategy for the RabittaShop service will involve a combination of unit testing, integration testing, and end-to-end testing to ensure that all features work as expected. We will use Jest for unit testing and Cypress for end-to-end testing.

Test tactics

  1. Unit Testing: We will write unit tests for each component of the RabittaShop service using Jest, which is a popular JavaScript testing framework.
  2. Integration Testing: We will perform integration testing to ensure that all components work together correctly. We will use Cypress for end-to-end testing, which allows us to simulate user interactions and test the entire application flow.
  3. Regression Testing: We will conduct regression testing after each feature is implemented to ensure that existing functionality continues to work as expected.

Test cases (mapped to use cases)

  1. Catalog Management:
    • Use case ID: UC-001
    • Test case description: Verify that the RabittaShop service can add, edit, and delete product categories and cards.
  2. Shopping Cart Management:
    • Use case ID: UC-002
    • Test case description: Verify that the RabittaShop service can add items to the shopping cart, remove items from the cart, and update quantities.
  3. Inventory Synchronization:
    • Use case ID: UC-003
    • Test case description: Verify that the RabittaShop service syncs product information, stock levels, and inventory changes with MySklad.
  4. Online Payment Integration:
    • Use case ID: UC-004
    • Test case description: Verify that the RabittaShop service integrates with T-Bank for online payments.
  5. Order History Management:
    • Use case ID: UC-005
    • Test case description: Verify that the RabittaShop service can manage customer order history and repeat orders.

Smoke

The smoke test will consist of running a few basic end-to-end tests to ensure that the RabittaShop service is up and running. These tests will cover the following scenarios:

  1. Login to the RabittaShop app using VK credentials.
  2. Navigate through the product catalog and add items to the shopping cart.
  3. Complete the checkout process with T-Bank for online payment.

Regression

Regression testing will be performed after each feature is implemented to ensure that existing functionality continues to work as expected. The regression test suite will cover all use cases, including edge cases and potential bugs.

Edge cases

The following are some edge cases that should be tested:

  1. What happens when a user tries to add more items than are available in stock?
  2. What happens when a user tries to delete an item from the shopping cart that has already been removed from stock?
  3. What happens when a user tries to complete the checkout process with an invalid payment method?