Skip to content

Test Proxy hangs on final test output #2715

Open
@vincenttran-msft

Description

@vincenttran-msft

Bug Title

Test proxy hanging issue

Crate Name

azure_core_test

Crate Version

0.1.0

Description

This bug has existed awhile but I have mostly been side-stepping it since it didn't really affect my testing workflow, but has become problematic when testing things against a shared resource (i.e. Storage Account).

In short, when you run test proxy, it will always hang on the final tests and won't exit the testrunner. However, I know all tests have completely finished executing as evidenced by the following:

  • Fiddler shows that all requests were made as expected
  • New test recording generated even for the test omitted in the testrunner output

Note: I am running this against a Windows machine (namely my Windows devbox)

Steps to Reproduce

  1. Run any suite of tests (i.e. cargo test --test blob_container_client)
  2. This will run all tests, but the output will hang on the last test (although the test has already ran -- observe this behavior through Fiddler and results in a new .json recording)
  3. The only way to exit this is to leave the test runner i.e. Ctrl+C

Example stdout:

C:\azure-sdk-for-rust\sdk\storage\azure_storage_blob>cargo test --test blob_container_client
Finished test profile [unoptimized + debuginfo] target(s) in 0.65s
Running tests\blob_container_client.rs (C:\azure-sdk-for-rust\target\debug\deps\blob_container_client-68bb231fd7665c9e.exe)
running 5 tests
test test_create_container ... ok
test test_get_container_properties ... ok
test test_list_blobs ... ok
test test_list_blobs_with_continuation ... ok
test test_set_container_metadata has been running for over 60 seconds
^C

Looking at the changes tab in VSCode for asset recordings:
Image

Similarly, we can see this in a more contrived example (blob_service_client, 2 tests) to observe the Fiddler output:

Image
Here we can see that the tests have already concluded, yet we are still stuck running the tests

Checklist

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-triageWorkflow: This is a new issue that needs to be triaged to the appropriate team.

    Type

    Projects

    Status

    Untriaged

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions