2011-04-26 14 views
6

Sono in procinto di valutare alcuni framework di automazione di test e apprezzerei qualche input. Disponiamo di un'app di elaborazione di elaborazione del credito di grandi dimensioni e ha tre endpoint: web ui, soap e http/post di base. Il mio requisito è il seguente.Suggerisci un framework di automazione di test per il mio scenario

Il nostro QA è molto utilizzato per i test basati sui dati (tutti i dati di input provengono da Excel e quindi è il risultato previsto per le asserzioni). Fondamentalmente ogni riga nel foglio excel contiene sia i dati di input che il risultato atteso corrispondente. Vogliamo che il nostro QA modifichi semplicemente i fogli Excel. Il nostro team di sviluppo sarà responsabile della fornitura di librerie/dispositivi di prova necessari. Considerato lo scenario precedente, vorrei utilizzare 1 unico framework di automazione in grado di leggere questi fogli Excel e testare tutti gli endpoint della mia applicazione, ovvero web ui, soap e http/post. Per favore fatemi sapere quali quadri di automazione del test sono adatti alle mie esigenze. Apprezzo alcuni suggerimenti e tutorial per iniziare.

risposta

2

Ho passato con alcuni dei quadri proposti, ma la scelta finale che ho fatto è stato quello di scrivere le mie proprie librerie di dominio (DSL se si vuole) sulla parte superiore del

  1. Spock
  2. Geb
  3. Groovy e
  4. HTTP Builder
  5. Sonar e Hudson

Attualmente eseguiamo test di regressione 14000+ (e in crescita) ogni notte come parte di CI.

3

Si consiglia Fit/Fitness. È un buon modo per consentire agli analisti aziendali di eseguire test per conto proprio.

+0

Grazie per aver raccomandato Fit. Anche se mi piace, l'intero processo di scrittura dei test nella sintassi wiki è travolgente per il controllo qualità e vogliamo anche controllare le versioni dei test. –

+0

Fitnesse è perfetto per questo, può funzionare con selenio per webui e ha un restfixture che farà le punte di sapone. Funzionerà anche bene con qualsiasi VCS, e seriamente una scimmia parzialmente addestrata può usare un wiki ..... – Bill

1

Non sono a conoscenza di uno strumento che consenta di testare tutto l'endpoint con i dati memorizzati in un foglio di calcolo. Dovresti cercare di scrivere un programma di test personalizzato che sia stato creato su un runner di test esistente per consentire la lettura dei dati da fogli di calcolo.

Tuttavia, vorrei concentrarmi maggiormente sullo scegliere uno strumento adatto all'endpoint che si sta tentando di testare. Per l'interfaccia utente Web, suggerirei selenium o HtmlUnit. Dovresti esaminare i metodi alternativi per ottenere i dati dal foglio di calcolo in questi test. Ma questi ti metteranno in pratica l'interfaccia utente il più vicino possibile a un utente.

Per testare l'endpoint del sapone suggerirei di scrivere solo test unitari usando JUnit e prendendo in giro il backend. È possibile testare il back-end separatamente con i test unitari per assicurarsi che funzioni correttamente. A seconda dell'architettura dell'applicazione, questa potrebbe non essere un'opzione per te. Si consiglia di impostarli come test di integrazione ed eseguirli tramite JUnit e asserire il messaggio restituito. Ancora una volta avresti bisogno di scrivere una libreria che ha ottenuto i dati e i valori attesi da un foglio di calcolo.

Spero che questo utile per voi.

0

Posso consigliare soapUI (http://www.soapui.org/) o l'applicazione JMeter (http://jmeter.apache.org/).

Con SoapUI ho eseguito test funzionali per il mio servizio web (soap-). Puoi automatizzare questi test.

Con Apache JMeter ho eseguito test automatici delle prestazioni su un'interfaccia utente Web. Anche i dati del test erano basati su un foglio Excel.

Cordiali saluti, Patrick

0

Si consiglia di dare un'occhiata a Twist da ThoughtWorks. È un IDE di test funzionale. I QA/BA possono utilizzare il linguaggio naturale per definire i casi di test. Twist utilizza Selenium e JUnit sotto il cofano, quindi i casi di test generati possono essere controllati in versione.

Sono d'accordo con @stuartf che non si troverà una soluzione pronta per l'uso che caricherà i dati excel e asserirà contro di essa. È possibile utilizzare POI o qualche altro lettore Excel per caricare i dati nel proprio framework di test.

5

Il progetto di robot consente di utilizzare i dati di test provenienti da file esterni. Non ho provato con i fogli Excel, ma l'ho fatto con i dati formattati CSV e JSON.Nel peggiore dei casi potresti dover esportare i tuoi dati Excel in un formato adatto a Python, ma ciò può essere fatto in modo trasparente alle persone che mantengono il foglio di calcolo.

In breve, è possibile creare una parola chiave in python (o qualsiasi linguaggio basato su JVM se si utilizza jython) che legge nel foglio di calcolo e lo converte in dati utilizzabile da casi di test.

Tuttavia, se tutti i test sono eseguiti da questo file di dati, non è necessario un framework. Basta scrivere un breve script in qualsiasi lingua che itera su ogni riga e chiama una funzione che equivale a curl o wget. I framework sono utili se hai bisogno di un modo per rappresentare i tuoi scenari di test ma lo hai già.

Detto questo, tuttavia, il vantaggio dell'uso del robot - anche se si ha solo un test che dice "convalida usando ogni riga del foglio di calcolo" - è che si ottiene il buon rapporto che il robot ha, e può integrarlo facilmente con jenkins/hudson.