En 2007, l'auteur a utilisé Selenium pour les tests d'intégration et d'automatisation de navigateur. Actuellement, Playwright est préféré pour sa polyvalence et sa compatibilité sur différentes plateformes. Pour garantir les tests de bout en bout, les tests Playwright sont intégrés aux applications .NET à l'aide de Visual Studio ou de VS Code.
Auparavant, un hack impliquant WebApplicationFactory était utilisé pour démarrer ASP.NET dans les tests unitaires. Cependant, avec .NET 8, IHostBuilder a remplacé IWebHostBuilder, nécessitant des modifications de code.
L'objectif de l'auteur est d'écrire des tests Playwright dans NUnit, qui suppose une application web en cours d'exécution et une URL définie. Un WebApplicationTestBuilderFactory démarre l'application web dans TestHost, en récupérant le port de manière dynamique.
Le constructeur de fabrique utilise un fichier de manifeste généré par MSBuild, qui est une solution de contournement nécessaire dans .NET 8. Cependant, ce hack peut être éliminé dans .NET 9, ce qui rend les tests plus simples.
Avec ces améliorations, les tests unitaires et les tests d'intégration Playwright peuvent être exécutés sur différents systèmes d'exploitation et environnements, garantissant ainsi des tests complets du site mis à jour vers .NET 8.
feeds.hanselman.com
Updating to .NET 8, updating to IHostBuilder, and running Playwright Tests within NUnit headless or headed on any OS
Create attached notes ...
