Gatling alimentatori e strategie di alimentazione

Blog

Ciao a tutti, nel nostro post precedente Accelera le prestazioni con Gatling: POST HTTP REQUEST noi abbiamo discusso:



  • Quali sono i diversi modi per inviare una richiesta HTTP POST con Gatling?
  • Come giocare con i diversi tipi di enti di richiesta utilizzando Gatling?

In questo post parleremo di:

  • Come inviare dati dinamici nei corpi di richiesta con i feeder Gatling?
  • Quali sono le strategie di alimentazione Gatling?

Supponiamo di simulare un caso d'uso in cui 1000 utenti simultanei stanno tentando di registrarsi all'app. Ora ci sono due modi per farlo: uno è scrivere un metodo di stringa casuale e usarlo nella nostra simulazione e l'altro è separare i dati dalla nostra simulazione definendo un alimentatore.



Alimentatore Gatling

Il feeder è un alias di tipo per Iterator[Map[String, T]]. Gatling DSL fornisce un metodo 'feed' di facile utilizzo che prende l'alimentatore come argomento e legge i dati dall'alimentatore e li inserisce nella simulazione.

pyspark cheat sheet pdf

Gatling ha fornito più alimentatori



Alimentatori di file separati da caratteri

Gatling fornisce vari modi per leggere i dati da file di valori separati da caratteri. Ora ci sono più casi d'uso in cui utilizziamo caratteri separatori diversi nei nostri file di dati come | ‘: @ # $ eccetera.

Quindi possiamo usare

  • ore csvfeeder = csv(userData.csv) // usa un separatore di virgola
  • ore tsvfeeder = tsv(userData.tsv) // usa un separatore di tabulazione
  • ore ssvFeeder = ssv(userData.ssv) // usa un punto e virgola separatore
  • ore customSeparatorFeeder = separateValues(hello.txt, '#') // usa il tuo separatore.

Se disponiamo di file di dati di grandi dimensioni, puoi utilizzare il file zip nell'alimentatore Gatling e chiedere a Gatling di decomprimere i dati in fase di esecuzione utilizzando la seguente sintassi

  • val csvFeeder = csv(userData.csv.zip).** unzip**

Alimentatori JSON

Sopra abbiamo visto come inviare i dati dai diversi file, ma cosa succede se un utente vuole utilizzare un file JSON come feeder? Proprio come il feeder CSV, Gatling ha un feeder JSON che può inserire i dati dal file JSON o da un URL JSON con la seguente sintassi:

Alimentatori JDBC

Come dice il nome, l'alimentatore JDBC fornisce la capacità di leggere i dati dalle connessioni JDBC. Significa che se un utente desidera leggere i dati da un database come MySQL o PostgreSQL, può utilizzare i feeder JDBC che prenderanno l'URL di connessione, le credenziali dell'utente e la query come input e in fase di esecuzione si collegheranno al database come da configurazione definita e iniettare i dati nella simulazione.

apri la finestra mobile del media vault
  • jdbcFeeder(databaseUrl, nome utente, password, SELECT * FROM utenti)

Gatling supporta anche altri feeder, ma questi dipendono dal caso d'uso in cui se un utente desidera leggere un file della mappa del sito utilizzando i feeder della mappa del sito, leggere i dati da Redis utilizzando i feeder di Redis e definire un feeder personalizzato secondo il caso d'uso.

#scala #gatling feeder #json feeder

blog.knoldus.com

Gatling alimentatori e strategie di alimentazione

Ciao a tutti, nel nostro post precedente Accelerare le prestazioni con Gatling: POST HTTP REQUEST abbiamo discusso: Quali sono i diversi modi per inviare una richiesta HTTP POST con Gatling? Come giocare con i diversi tipi di enti di richiesta utilizzando Gatling? In questo post parleremo di: Come inviare dati dinamici negli organi di richiesta con i feeder Gatling? Quali sono le strategie di alimentazione Gatling?