Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Test Runs using Http Fault Injector #35030

Merged

Conversation

alzimmermsft
Copy link
Member

Description

Adds the ability for tests to run with HTTP fault injecting functionality to simulate scenarios where the network is unstable.

All SDK Contribution checklist:

  • The pull request does not introduce [breaking changes]
  • CHANGELOG is updated for new features, bug fixes or other significant changes.
  • I have read the contribution guidelines.

General Guidelines and Best Practices

  • Title of the pull request is clear and informative.
  • There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

  • Pull request includes test coverage for the included changes.

@alzimmermsft alzimmermsft added Storage Storage Service (Queues, Blobs, Files) EngSys This issue is impacting the engineering system. Client This issue points to a problem in the data-plane of the library. test-enhancement labels May 18, 2023
@alzimmermsft alzimmermsft self-assigned this May 18, 2023
@azure-sdk
Copy link
Collaborator

API change check

API changes are not detected in this pull request.

@alzimmermsft
Copy link
Member Author

/azp run java - storage - tests

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@alzimmermsft
Copy link
Member Author

/azp run java - storage - tests

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@Azure Azure deleted a comment from azure-pipelines bot May 18, 2023
@Azure Azure deleted a comment from azure-pipelines bot May 18, 2023
@Azure Azure deleted a comment from azure-pipelines bot May 18, 2023
@Azure Azure deleted a comment from azure-pipelines bot May 18, 2023
@Azure Azure deleted a comment from azure-pipelines bot May 18, 2023
@Azure Azure deleted a comment from azure-pipelines bot May 18, 2023
@Azure Azure deleted a comment from azure-pipelines bot May 18, 2023
@Azure Azure deleted a comment from azure-pipelines bot May 18, 2023
@alzimmermsft
Copy link
Member Author

/azp run java - storage - tests

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@alzimmermsft
Copy link
Member Author

/azp run java - storage - tests

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@alzimmermsft
Copy link
Member Author

/azp run java - storage - tests

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@alzimmermsft alzimmermsft marked this pull request as ready for review May 31, 2023 11:42
@alzimmermsft alzimmermsft requested a review from mikeharder May 31, 2023 11:42
@alzimmermsft
Copy link
Member Author

@mikeharder, I've disabled running HTTP fault injector on macOS while a solution for it preventing requests to the HTTPS port is being found.

// macOS has known issues running HTTP fault injector, change this once
// https://github.com/Azure/azure-sdk-tools/pull/6216 is resolved
@IgnoreIf({ OperatingSystem.current.family == OperatingSystem.Family.MAC_OS })
class HttpFaultInjectingTests extends APISpec {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We'll want to make this generic and support this in azure-core-test instead of making it specific to just storage tests.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed, I think for now we can move forward with it being local to Storage while Spock is still being used for writing tests. Once we want fault injecting testing in other SDKs, or just generally, we can add a test class into azure-core-test to make this general.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@alzimmermsft alzimmermsft merged commit 013901b into Azure:main Jun 1, 2023
@alzimmermsft alzimmermsft deleted the AzStorage_AddHttpFaultInjectorTesting branch June 1, 2023 18:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Client This issue points to a problem in the data-plane of the library. EngSys This issue is impacting the engineering system. Storage Storage Service (Queues, Blobs, Files) test-enhancement
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants