Care este cel mai bun mod de a efectua testarea unităților pentru paginile web ASP.NET 2.0?

Orice sugestii? Utilizarea studioului vizual în C #.

Există instrumente specifice sau metode pentru a aborda acest lucru?

Actualizați:

Scuze, ar fi trebuit să fiu puțin mai specific. Sunt folosind ASP.Net 2.0 și căuta mai mult pentru un instrument ca jUnit pentru Java. Am aruncat o privire la NUnit și NUnitAsp și asta arată foarte promițător. Și nici măcar nu știam că Visual Studio Pro are o suită de testare, așa că voi examina toate aceste opțiuni (tocmai am început să folosesc Visual Studio / Asp.net / C# vara aceasta).

0
fr hi bn

6 răspunsuri

Băieți, eo întrebare destul de generală. O să fac tot ce pot, dar fii pregătit să mă vezi cu o milă.

Ipoteze

  1. Folosiți ASP.NET, nu este simplu ASP
  2. Nu doriți să vă testați paginile web, ci logica în spatele lor. Unitatea care testează paginile .ASPX actuale este destul de dureroasă, dar există cadre acolo pentru ao face. NUnitAsp este unul.

Primul lucru pe care trebuie să-l faceți este să vă organizați (sau să planificați) codul pentru a putea fi testat. Cele două modele de design cele mai populare pentru acest moment par a fi MVP și MVC. Ambele separați logica aplicației de la vizualizarea astfel încât să puteți testa logica fără ca vizualizarea (paginile web) să vă ajungă în cale.

Fie MVP, fie MVC vor fi eficiente. MVC are avantajul de a avea un cadru Microsoft aproape gata de plecare .

Odată ce ați selectat un model cadru care încurajează testabilitatea, trebuie să utilizați un instrument de testare a unităților. NUnit este un bun punct de plecare. Visual Studio Professional are o suită de testare construită , dar NUnit + TestDrive.NET funcționează de asemenea în IDE.

E un fel de explozie de informații. Sper că unii, dacă vor ajunge. Pragmatic Bookshelf are o carte bună care acoperă subiectul .

0
adăugat
NUnitAsp nu mai este acceptat: omul care a scris-o face ca punctul de vedere valabil că "oamenii de știință folosesc straturi de prezentare pentru a face ASP.NET atât de subțire încât un instrument ca NUnitAsp nu este de ajutor".
adăugat autor Jeremy McGee, sursa
Visual Studio 2008 vine cu MSTest și permite abilități destul de unitare de testare a unităților. De asemenea, în ceea ce privește ASV.NET MVC, când creați un nou proiect, Visual Studio vă va cere să construiți și un Proiect de testare pentru acesta. Am folosit MVP și mai multe MVC înainte, face testarea mult mai ușoară.
adăugat autor Jack Marchetti, sursa
Având în vedere alegerea cadrelor de testare unitate de la xUnit.net [ xunit.codeplex.com/] , NUnit, și MSTest, aș alege xUnit.net, scris de Jim Newkirk, managerul Microsoft de codeplex.com cu Brad Wilson. JN este, de asemenea, listat ca creatorul NUnit 2.0. Cel puțin pentru mine, se spune ceva când senior angajat Microsoft ca JN și BW alege să ignore MSTest și NUnit. De asemenea, ASP.NET MVC a fost construit pentru testabilitate, vezi Rob Conery adăugat autor gerryLowry, sursa

A fost o serie de screencast-uri cu un an în urmă pe Podcastul Polymorphic, care a făcut o intrare destul de bună de intro a unei implementări MVP în ASP.NET. Implementate în acest fel, testele unitare intră într-un loc mult mai natural.

http://polymorphicpodcast.com/shows/mv-patterns/

0
adăugat

Cel mai bun pariu este separarea logicii modelului de prezentare și testarea unitară a modelului cu NUnit sau similar. Testarea interacțiunii utilizatorilor cu pagina web poate fi fidela.

If you actually do want to unit test the users interaction with the web page some of the afformentioned tools such as waitn seem good, an addition to that which I've heard of is Selenium

0
adăugat
Degetele mele fac frecvent și această greșeală: este "WatiN", pronunțată "What-in", pentru "Testarea aplicațiilor web în .NET" [ watintestrecord.sourceforge.net/ .
adăugat autor gerryLowry, sursa

Aruncați o privire la http://selenium.openqa.org/ oferă o bună modalitate automată de a construi unitatea testele se încarcă în browser. există un plugin frumos pentru înregistrarea testelor firefox și poate utiliza aproape orice cadru de testare a unităților. Am avut o prezentare / demo la întâlnirea noastră de grup local de utilizatori luna trecută și mi sa părut minunat.

0
adăugat
Sau consultați seleniumhq.org
adăugat autor David d C e Freitas, sursa

WatiN is the best that I've found. It integrates into Visual Studio unit testing or nunit & you can do pretty much anything you need in the browser (click links, submit forms, look for text/images, etc.), plus it's written in .net so you don't need to have ruby installed (as you do for watir, which is an awesome tool none the less)

0
adăugat
Nu pot să fiu de acord mai mult. Am folosit-o de mult timp pe Watir, dar uneori am probleme cu cadrul rubinic. Este mult mai plăcut să folosești WatiN. Nu trebuie să am instalat rubin și am intellisense.
adăugat autor Ben Mills, sursa
WatiN este minunat și este un instrument de testare INTEGRATION. Test unitate! = Test de integrare.
adăugat autor Jaco Pretorius, sursa
Da, am presupus că asta au însemnat, am răspuns înainte de a clarifica întrebarea.
adăugat autor Glenn Slaven, sursa