Quando Scott Guthrie first blogged on Razor, ha scrittoCome unità di testare un rasoio-view
La nuova implementazione vista del motore sosterrà la capacità di vista di unit test (senza la necessità di un controller o web-server, e può essere ospitati in qualsiasi progetto di test unitario - non è richiesto alcun dominio app speciale).
Tuttavia, non riesco a trovare altre dichiarazioni (o esempi) relativi alla testabilità del rasoio. Ci sono dei puntatori all'utilizzo di CodelanguageServie
o RazorGenerator o some self-made renderer - non di quelli che chiamerei "di progettazione".
Attualmente è possibile testare unitamente una vista del rasoio in modo semplice? (In un MVC-applicazioni asp.net, cioè. Porta Ie NancyFx testabilità in esso è nancy.testing-package.)
(e attualmente non mi interessa if views should be tested or not.)
So che ci sono loads of questions like this one , ma la maggior parte di loro sono piuttosto vecchio ...
Questo suggerimento richiede ancora un controller che includa il contesto del controller con varie proprietà fornite. Mentre possono essere in qualche modo derisi, questo codice - al di fuori di un controller in esecuzione con un HttpContext.Current valido - viene eseguito in un NRE (NullReferenceException) in 'System.Web.Compilation.BuildManager.GetCacheKeyFromVirtualPath (VirtualPath virtualPath, Boolean & keyFromVPP)' . Quindi la ricerca di un modo semplice per testare una vista, ad es. implementazione di qualcosa come 'RazorView.Render (string viewName, object model)', continua. Le viste/parziali non sembrano ancora testabili. – Manfred