A quale livello di architettura esegui i test BDD (ad es. Cucumber)

4

Nell'ultimo anno mi sono appassionato all'utilizzo di SpecFlow (che è una porta .NET di Cucumber)

L'ho usato sia per testare un'applicazione ASP.NET MVC sul livello web, ossia utilizzando l'automazione del browser, ma anche a livello di controller. Il primo mi dà una maggiore fiducia nella correttezza dell'applicazione, perché JavaScript è stato testato e anche la configurazione del controller impropria viene catturata.

Ma quei test sono più lenti da eseguire e più complessi da implementare rispetto a quelli appena testati sul livello controller.

I miei test sono test funzionali completi, cioè esercitano tutti i livelli dell'applicazione, fino al database. Quindi la prima cosa prima di ogni scenario è che il database sia cancellato dai dati, consentendo al test di assumere che esistono solo i dati specificati nel blocco "Dati".

Poi vedo un esempio su come usarlo, dove testano solo l'esercizio del livello del modello.

Quindi quali sono le tue esperienze con questi strumenti? Quale strato dell'applicazione test?

    
posta Pete 22.01.2011 - 13:24
fonte

2 risposte

5

È importante tenere presente il triangolo di prova quando si crea test:

Questo significa che dovresti creare molti più test ai livelli più bassi del triangolo e passare meno tempo più in alto. È più costoso mantenere i test end-to-end rispetto ai test unitari.

    
risposta data 23.01.2011 - 19:06
fonte
0

La nostra azienda sta intraprendendo l'implementazione di BDD con la nostra applicazione .NET. La nostra applicazione è strutturata con:

  • . Interfaccia utente di .NET + middleware
  • OpenEdge AppServer + Database

Il nostro modo di pensare è sostituire l'interfaccia utente con gli scenari BDD e gli scenari interagiscono direttamente con il middleware.

Stiamo lasciando test dell'interfaccia utente come manuale (per il momento).

    
risposta data 29.11.2012 - 05:06
fonte

Leggi altre domande sui tag