2012-11-30 7 views
7

Qualcuno è a conoscenza di strumenti che consentono di utilizzare test funzionali Geb per il test delle prestazioni?Come possono essere utilizzati i test funzionali Geb per il test delle prestazioni/capacità?

Nel libro "Consegna continua", è suggerito che i test funzionali possano essere utilizzati per il test delle prestazioni, chiedendosi se qualcuno ha qualche idea su come questo possa essere implementato usando Gradle, Spock e Geb.

Per dare contesto, al momento, stiamo utilizzando uno script JMeter che simula un numero di utenti che eseguono la scansione attraverso il nostro sito, seguendo collegamenti casuali sulla pagina. Ciò fornisce una copertura relativamente buona del collegamento al contenuto, ma alcune aree del sito, come le ricerche e le funzionalità di accesso non vengono toccate.

Grazie in anticipo.

risposta

0

È possibile avviare i test Geb rilevanti dalla propria suite più volte su più computer o anche più volte su una singola macchina, utilizzando driver senza testa come HtmlUnit o PhantomJS. Questo ti porta il carico per il test di capacità.

Naturalmente è anche possibile combinarlo con tabelle di dati nei blocchi where:, ripetendo lo stesso test con parametri diversi. Uno strumento molto utile per generare dati per il test parametrato è Spock Genesis che presumo sarebbe utile per il tuo scenario.


Aggiornamento: Anche se il test non viene parametrizzato si può facilmente ripetere annotando il metodo funzione con @Unroll e solo l'aggiunta di un blocco where: come questo:

@Unroll 
def "test"() { 
    expect: 
    println n 

    where: 
    n << (1..100) 
} 

Et voilà - il il test viene eseguito 100 volte.