You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[pipeline-test-triage] BrowserWasm acceptance tests fail with MissingMethodException on MemoryExtensions.AsSpan after test SDK b
[Content truncated due to length] #11181
On PR #11178 (Azure Pipelines build 1590874, microsoft.testfx check, Linux Release and MacOS Release legs), 5 browser-wasm acceptance tests deterministically fail with a MissingMethodException (Method not found: System.Span\1(!!0) System.MemoryExtensions.AsSpan(!0)(!!0[])) thrown from inside the Microsoft.Testing.Platform host bootstrap while running under the browser-wasm AppBundle's dotnet.runtime.js`.
Affected tests (all in BrowserWasmExecutionTests.cs):
Regression, moderate-high confidence (7/10). The failure is a deterministic MissingMethodException (assembly/runtime-pack mismatch), reproducing with an identical call stack across all 5 tests and across two independent OS legs (Linux and macOS) in the same build. No retries were recorded and no pass was observed for any of the 5 tests in this build.
Why this is actionable
PR #11178 bumps MicrosoftNETTestSdkVersion from 18.9.0 to 18.10.0 in Directory.Packages.props and removes the separate MicrosoftTestPlatformFilterSourceVersion property (now aliased to MicrosoftNETTestSdkVersion), the same class of dependency bump that a companion PR (#11165/#11164, tracked in #11172) made. The crash occurs while Microsoft.Testing.Platform.Hosts.TestHostBuilder.SetupCommonServicesAsync calls Sha256Hasher.HashWithNormalizedCasing, which calls MemoryExtensions.AsSpan — a BCL method the browser-wasm AppBundle's bundled dotnet.runtime.js/BCL shims apparently do not expose at the version resolved after this bump. This points to a version mismatch between the updated test SDK/runtime pack and the WASM runtime pack used to build the AppBundle.
First/last occurrence and recurrence
First observed in this PR's Azure Pipelines build 1590874 (2026-09-10). Bounded PR-scoped history does not include a slow/duration-only comparison (PR history is limited to failures/retries), so a prior-build baseline for this exact signature is not available in history.json; however, the deterministic, identical-stack failure across two independent OS legs (Linux and macOS) within the same build is itself high-confidence evidence of a real regression rather than an environmental one-off.
Affected / unaffected matrix
Affected: Linux Release and macOS Release legs, net10.0 (browser-wasm host under net11.0 test project TFM), all 5 BrowserWasmExecutionTests methods.
Unaffected/not run: Windows Release leg skipped this test in this build (recorded as skipped, not evaluated).
Retry outcomes
No retries were recorded for any of the 5 tests; each failed once and was not retried, consistent with a deterministic (non-flaky) failure.
Stack excerpt (sanitized)
Error: Method not found: System.Span`1<!!0> System.MemoryExtensions.AsSpan<!0>(!!0[])
at un (.../BrowserTestProject/bin/Release/net10.0/browser-wasm/AppBundle/_framework/dotnet.runtime.js)
at cn (.../dotnet.runtime.js)
at an (.../dotnet.runtime.js)
at System.Security.Cryptography.SHA256.HashData(Byte[] source)
at Microsoft.Testing.Platform.Helpers.Sha256Hasher.HashWithNormalizedCasing(String text)
at Microsoft.Testing.Platform.Hosts.TestHostBuilder.AddApplicationTelemetryMetadata(IServiceProvider serviceProvider, Dictionary`2 builderMetadata)
at Microsoft.Testing.Platform.Hosts.TestHostBuilder.SetupCommonServicesAsync(...)
at Microsoft.Testing.Platform.Hosts.TestHostBuilder.BuildAsync(...)
at Microsoft.Testing.Platform.Builder.TestApplicationBuilder.BuildAsync()
at BrowserTestProject.MicrosoftTestingPlatformApplication.RunAsync(String[] args)
Build / artifact links
Azure Pipelines build 1590874 (microsoft.testfx check), Linux Release and MacOS Release legs, TestResults_Linux_Release_Attempt1 / TestResults_MacOS_Release_Attempt1 artifact families (CTRF: Microsoft.Testing.Platform.Acceptance.IntegrationTests_net11.0.ctrf.json).
Build and run any of the 5 BrowserWasmExecutionTests acceptance tests targeting net10.0 browser-wasm on Linux or macOS.
Observe the MissingMethodException on MemoryExtensions.AsSpan inside the generated dotnet.runtime.js during TestHostBuilder bootstrap.
Compare the WASM runtime pack / BCL shim version bundled in the AppBundle before and after this PR's dependency bump.
Next concrete step
Diff the resolved browser-wasm runtime pack (Microsoft.NETCore.App.Runtime.Mono.browser-wasm or equivalent) and its bundled dotnet.runtime.js BCL surface before and after this PR's MicrosoftNETTestSdkVersion bump, and confirm whether the bump changes which runtime pack version is restored/used for the net10.0 browser-wasm test host, reintroducing a missing MemoryExtensions.AsSpan overload.
Likely ownership: Microsoft.Testing.Platform team (owns TestHostBuilder/Sha256Hasher and the browser-wasm host integration), with input from whoever manages the MicrosoftNETTestSdkVersion/runtime-pack alignment in Directory.Packages.props.
🤖 Automated content by GitHub Copilot. Generated by the Pipeline Test Triage workflow. · auto · 165.4 AIC · ⌖ 2.42 AIC · ⊞ 8.9K
Summary
On PR #11178 (Azure Pipelines build 1590874,
microsoft.testfxcheck,Linux ReleaseandMacOS Releaselegs), 5 browser-wasm acceptance tests deterministically fail with aMissingMethodException(Method not found: System.Span\1(!!0) System.MemoryExtensions.AsSpan(!0)(!!0[])) thrown from inside the Microsoft.Testing.Platform host bootstrap while running under the browser-wasm AppBundle'sdotnet.runtime.js`.Affected tests (all in
BrowserWasmExecutionTests.cs):BrowserWasmExecution_RunsTestsUnderNodeBrowserWasmExecution_DotnetTestHttpTransportExercisesLiveGatewayBrowserWasmExecution_TrxReport_RunsWithoutPlatformNotSupportedBrowserWasmExecution_AzureDevOpsLivePublishingReachesStubbedRestApiBrowserWasmExecution_RunSettingsEnvironmentVariables_FailsWithClearDiagnosticCategory and confidence
Regression, moderate-high confidence (7/10). The failure is a deterministic
MissingMethodException(assembly/runtime-pack mismatch), reproducing with an identical call stack across all 5 tests and across two independent OS legs (Linux and macOS) in the same build. No retries were recorded and no pass was observed for any of the 5 tests in this build.Why this is actionable
PR #11178 bumps
MicrosoftNETTestSdkVersionfrom 18.9.0 to 18.10.0 inDirectory.Packages.propsand removes the separateMicrosoftTestPlatformFilterSourceVersionproperty (now aliased toMicrosoftNETTestSdkVersion), the same class of dependency bump that a companion PR (#11165/#11164, tracked in #11172) made. The crash occurs whileMicrosoft.Testing.Platform.Hosts.TestHostBuilder.SetupCommonServicesAsynccallsSha256Hasher.HashWithNormalizedCasing, which callsMemoryExtensions.AsSpan— a BCL method the browser-wasmAppBundle's bundleddotnet.runtime.js/BCL shims apparently do not expose at the version resolved after this bump. This points to a version mismatch between the updated test SDK/runtime pack and the WASM runtime pack used to build theAppBundle.First/last occurrence and recurrence
First observed in this PR's Azure Pipelines build 1590874 (2026-09-10). Bounded PR-scoped history does not include a slow/duration-only comparison (PR history is limited to failures/retries), so a prior-build baseline for this exact signature is not available in
history.json; however, the deterministic, identical-stack failure across two independent OS legs (Linux and macOS) within the same build is itself high-confidence evidence of a real regression rather than an environmental one-off.Affected / unaffected matrix
net10.0(browser-wasm host undernet11.0test project TFM), all 5BrowserWasmExecutionTestsmethods.skipped, not evaluated).Retry outcomes
No retries were recorded for any of the 5 tests; each failed once and was not retried, consistent with a deterministic (non-flaky) failure.
Stack excerpt (sanitized)
Build / artifact links
Azure Pipelines build 1590874 (
microsoft.testfxcheck),Linux ReleaseandMacOS Releaselegs,TestResults_Linux_Release_Attempt1/TestResults_MacOS_Release_Attempt1artifact families (CTRF:Microsoft.Testing.Platform.Acceptance.IntegrationTests_net11.0.ctrf.json).Reproduction guidance
MicrosoftNETTestSdkVersionto 18.10.0 and removes the separateMicrosoftTestPlatformFilterSourceVersionpin).BrowserWasmExecutionTestsacceptance tests targetingnet10.0browser-wasm on Linux or macOS.MissingMethodExceptiononMemoryExtensions.AsSpaninside the generateddotnet.runtime.jsduringTestHostBuilderbootstrap.AppBundlebefore and after this PR's dependency bump.Next concrete step
Diff the resolved browser-wasm runtime pack (
Microsoft.NETCore.App.Runtime.Mono.browser-wasmor equivalent) and its bundleddotnet.runtime.jsBCL surface before and after this PR'sMicrosoftNETTestSdkVersionbump, and confirm whether the bump changes which runtime pack version is restored/used for thenet10.0browser-wasm test host, reintroducing a missingMemoryExtensions.AsSpanoverload.Likely ownership: Microsoft.Testing.Platform team (owns
TestHostBuilder/Sha256Hasherand the browser-wasm host integration), with input from whoever manages theMicrosoftNETTestSdkVersion/runtime-pack alignment inDirectory.Packages.props.