Skip to content

[Helix] Enable Components.E2E tests #6857

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

Closed
HaoK opened this issue Jan 18, 2019 · 13 comments
Closed

[Helix] Enable Components.E2E tests #6857

HaoK opened this issue Jan 18, 2019 · 13 comments
Assignees
Labels
affected-very-few This issue impacts very few customers area-blazor Includes: Blazor, Razor Components area-infrastructure Includes: MSBuild projects/targets, build scripts, CI, Installers and shared framework severity-nice-to-have This label is used by an internal tool task
Milestone

Comments

@HaoK
Copy link
Member

HaoK commented Jan 18, 2019

Need to install selenium on helix machines?

 System.AggregateException : One or more errors occurred. (The selenium server instance did not start accepting requests at http://localhost:59102/wd/hub before the timeout occurred. The last exception was: System.AggregateException: One or more errors occurred. (Connection refused) ---> System.Net.Http.HttpRequestException: Connection refused ---> System.Net.Sockets.SocketException: Connection refused
   at System.Net.Http.ConnectHelper.ConnectAsync(String host, Int32 port, CancellationToken cancellationToken)
   --- End of inner exception stack trace ---
   at System.Net.Http.ConnectHelper.ConnectAsync(String host, Int32 port, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean allowHttp2, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.GetHttpConnectionAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage request, Boolean doRequestAuth, CancellationToken cancellationToken)
   at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at System.Net.Http.HttpClient.FinishSendAsyncBuffered(Task`1 sendTask, HttpRequestMessage request, CancellationTokenSource cts, Boolean disposeCts)
   --- End of inner exception stack trace ---
   at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
   at System.Threading.Tasks.Task`1.get_Result()
   at Microsoft.AspNetCore.Components.E2ETest.Infrastructure.SeleniumStandaloneServer.PollUntilProcessStarted() in /_/src/Components/test/E2ETest/Infrastructure/SeleniumStandaloneServer.cs:line 77
---> (Inner Exception #0) System.Net.Http.HttpRequestException: Connection refused ---> System.Net.Sockets.SocketException: Connection refused
   at System.Net.Http.ConnectHelper.ConnectAsync(String host, Int32 port, CancellationToken cancellationToken)
@HaoK HaoK added the area-infrastructure Includes: MSBuild projects/targets, build scripts, CI, Installers and shared framework label Jan 18, 2019
@HaoK
Copy link
Member Author

HaoK commented Jan 24, 2019

This also appears to be an issue with ProjectTemplates.Test

@HaoK HaoK added area-mvc Includes: MVC, Actions and Controllers, Localization, CORS, most templates test-failure and removed area-infrastructure Includes: MSBuild projects/targets, build scripts, CI, Installers and shared framework labels Feb 6, 2019
@danroth27 danroth27 added the area-blazor Includes: Blazor, Razor Components label Feb 6, 2019
@mkArtakMSFT
Copy link
Contributor

@HaoK is anybody tracking work to install selenium on the agents?

@mkArtakMSFT
Copy link
Contributor

/cc @ryanbrandenburg

@HaoK
Copy link
Member Author

HaoK commented Mar 12, 2019

There's the corresponding issue https://github.com/dotnet/core-eng/issues/5302

The templates/components tests are currently failing due to other issues, so they are waiting for us to confirm if the existing queues now has everything we need.

You can use #8256 to investigate the current project template helix failures, Components is blocked by the build issue #7862

@ryanbrandenburg
Copy link
Contributor

@javiercn who recently changed this area.

@javiercn
Copy link
Member

Selenium would need to be installed into the machine in the same way as its done in azure pipelines. You can use SelenumE2ETestsSupported=false to disable anything selenium related across our build

@mkArtakMSFT
Copy link
Contributor

Who is going to take care of installation Selenium on the agents? @HaoK ?

@HaoK
Copy link
Member Author

HaoK commented Apr 4, 2019

The helix team is helping us get everything we need installed on the machines on the queues, they just merged a set of changes for us I'll kick off a new run to see if we have everything we need now

@HaoK
Copy link
Member Author

HaoK commented Apr 5, 2019

Getting closer, looks like selenium is a go, but its not properly configured, any ideas what we need to set here for the SeleniumProcessTrackingFolder?

 System.InvalidOperationException : Invalid tracking folder. Set the 'SeleniumProcessTrackingFolder' MSBuild property to a valid folder.
Stack Trace:
   at Microsoft.AspNetCore.E2ETesting.SeleniumStandaloneServer.InitializeInstance(ITestOutputHelper output) in /_/src/Shared/E2ETesting/SeleniumStandaloneServer.cs:line 115
   at Microsoft.AspNetCore.E2ETesting.SeleniumStandaloneServer.GetInstanceAsync(ITestOutputHelper output) in /_/src/Shared/E2ETesting/SeleniumStandaloneServer.cs:line 77
   at Microsoft.AspNetCore.E2ETesting.BrowserFixture.GetOrCreateBrowserAsync(ITestOutputHelper output) in /_/src/Shared/E2ETesting/BrowserFixture.cs:line 88
   at Microsoft.AspNetCore.E2ETesting.BrowserTestBase.InitializeAsync() in /_/src/Shared/E2ETesting/BrowserTestBase.cs:line 42
Failed   Microsoft.AspNetCore.Components.E2ETest.Tests.EventBubblingTest.BubblingStandardEvent_FiredOnElementWithoutHandler

@javiercn
Copy link
Member

javiercn commented Apr 5, 2019

Yeah, you need to setup an environment variable to a folder we can use for writing the PIDs of the processes we start.

On the CI we set it to RepoRoot/obj in helix you can set it to any temp folder you feel like. We just need this to ensure we don’t leave processes running behind us.

It’s also important to add a build step that reads the folder and kills each alive process that matches the files so that we don’t leave any folder behind.

You can check the DevOps pipeline for a sample of what we do there.

@HaoK
Copy link
Member Author

HaoK commented Apr 5, 2019

I don't think cleanup is as important on helix, everything should be getting automatically nuked after the work item is done by the helix infrastructure

@javiercn
Copy link
Member

javiercn commented Apr 5, 2019

@HaoK As in the machine rebooted, image destroyed etc? Then just point it to an existing folder and that should be enough

@mkArtakMSFT mkArtakMSFT modified the milestones: 3.0.0-preview6, Backlog Apr 19, 2019
@HaoK HaoK changed the title [Helix] Components.E2E fail due to no selenium [Helix] Enable Components.E2E and Blazor build tests Jan 6, 2020
@HaoK HaoK added affected-very-few This issue impacts very few customers severity-nice-to-have This label is used by an internal tool labels Oct 6, 2020 — with ASP.NET Core Issue Ranking
@HaoK HaoK changed the title [Helix] Enable Components.E2E and Blazor build tests [Helix] Enable Components.E2E tests Oct 12, 2020
@HaoK HaoK modified the milestones: Backlog, 5.0.0 Oct 12, 2020
@HaoK HaoK added the Working label Oct 12, 2020
@HaoK HaoK linked a pull request Oct 12, 2020 that will close this issue
@pranavkm pranavkm modified the milestones: 5.0.0, 6.0-preview1 Nov 11, 2020
@HaoK HaoK removed the test-failure label Jan 12, 2021
@HaoK HaoK removed the Working label Jan 25, 2021
@pranavkm pranavkm modified the milestones: 6.0-preview3, 6.0-preview4 Mar 15, 2021
@HaoK HaoK modified the milestones: 6.0-preview4, 6.0-preview5 Apr 15, 2021
@HaoK
Copy link
Member Author

HaoK commented Apr 19, 2021

This is tracked by #31159 since we no longer plan to run the components/selenium e2e tests as is, but instead migrate things to playwright which will work on helix from the start

@HaoK HaoK closed this as completed Apr 19, 2021
@ghost ghost locked as resolved and limited conversation to collaborators May 19, 2021
@amcasey amcasey added the area-infrastructure Includes: MSBuild projects/targets, build scripts, CI, Installers and shared framework label Jun 1, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
affected-very-few This issue impacts very few customers area-blazor Includes: Blazor, Razor Components area-infrastructure Includes: MSBuild projects/targets, build scripts, CI, Installers and shared framework severity-nice-to-have This label is used by an internal tool task
Projects
None yet
Development

Successfully merging a pull request may close this issue.

8 participants