RSS Блог Скотта Хансельмана

Обновление до .NET 8, обновление до IHostBuilder и запуск тестов Playwright в NUnit без графического интерфейса или с графическим интерфейсом на любой операционной системе

Follow
В 2007 году автор использовал Selenium для интеграционного и автоматического тестирования браузера. В настоящее время предпочтение отдается Playwright за его универсальность и совместимость на разных платформах. Чтобы обеспечить тестирование с конечной точки до конечной точки, тесты Playwright интегрируются в приложения .NET с помощью Visual Studio или VS Code. Ранее использовался хак с WebApplicationFactory для запуска ASP.NET в рамках юнит-тестов. Однако с .NET 8 IHostBuilder заменил IWebHostBuilder, что потребовало изменений в коде. Целью автора является написание тестов Playwright в NUnit, которые предполагают запущенное веб-приложение и определенный URL. WebApplicationTestBuilderFactory запускает веб-приложение в TestHost, динамически получая порт. Фабрика строителей использует файл манифеста, сгенерированный MSBuild, который является необходимой обходной мерой в .NET 8. Однако этот хак можно устранить в .NET 9, что сделает тестирование более простым. С этими улучшениями можно запускать как юнит-тесты, так и интеграционные тесты Playwright на различных операционных системах и средах, обеспечивая всестороннее тестирование сайта, обновленного до .NET 8.
favicon
feeds.hanselman.com
Updating to .NET 8, updating to IHostBuilder, and running Playwright Tests within NUnit headless or headed on any OS