visual studio net mvc asp and angular visual-studio-2015 asp.net-core protractor-net

studio - asp.net core angular 6



Prueba de la aplicaciĆ³n ASP.NET Core utilizando Protractor en Visual Studio 2015 (2)

Tengo un proyecto ASP.NET Core basado en la plantilla angular2 del paquete de plantilla principal. Agregué un segundo proyecto con xunit y transportador para ejecutar la prueba unitaria contra mi aplicación principal.

Ambos funcionan muy bien solos, solo me falta una pequeña cosa:

Cuando quiero ejecutar las pruebas de transportador, necesito alojar el proyecto principal en algún lugar de forma manual. Si no alojo el proyecto principal manualmente, no se ejecuta, por lo que todas las pruebas fallan porque no se puede acceder a mi página.

Probablemente necesito iniciar la aplicación / proyecto principal de alguna manera a partir de la prueba, pero no tengo idea de cómo. Todos los ejemplos de transportador se ejecutan contra algunas páginas de inicio que ya se están ejecutando, ninguna se ejecuta contra algún otro proyecto.

¿Cómo comienzo el proyecto principal principal de ASP.NET desde mi proyecto de prueba, por lo que se está ejecutando para probarlo?

Lo extraño es que después de que comencé la aplicación principal una vez que usé el transportador Strg + F5 con ChromeDriver, encontraré la página de inicio de la aplicación. Pero necesito ejecutarlo una vez manualmente para que las pruebas funcionen ...

public class EndToEndTests : IDisposable { private const string Url = "https://localhost:44391/"; private readonly IWebDriver _driver; private readonly NgWebDriver _browser; public EndToEndTests() { // TODO: somehow get the ASP.NET Core project up and running _driver = new ChromeDriver(@"/test/ChromeDriver"); _driver.Manage().Timeouts().SetScriptTimeout(TimeSpan.FromSeconds(10)); _browser = new NgWebDriver(_driver); } public void Dispose() { _driver.Quit(); } [Fact(DisplayName = "Has a title")] public void HasATitle() { _browser.Url = Url; Assert.Equal("My page", _browser.Title); }


Intentando otra vez. Cuando desarrollo mi servidor web se ejecuta todo el tiempo. ¿Entonces las pruebas e2e no deberían necesitar iniciar el servidor web? Cuando se trata de compilaciones nocturnas, es posible que el servidor deba iniciarse antes de que se ejecuten las pruebas. Compruebe TeamServer para la configuración de compilación niglty. Nota: Si observa la página de inicio de angular2, verá que funcionan en un entorno de nodo. ¿Mayby Protractor.NET no es el camino a seguir? Si quieres trabajar con C # sugiero ASP.NET con JQuery. Donde deja que C # rinda el html.


Necesita autoevaluar su aplicación web en su método SetUp.

Con las aplicaciones basadas en .NET 4.5 Owin, debe usar el paquete Microsoft.Owin.Hosting con el método WebApp.Start.

Con .NET Core, necesita usar WebHostBuilder