2010-06-29 16 views
3

J'écris un script jmeter et j'ai un énorme fichier csv avec un tas de données que j'utilise dans mes demandes, est-il possible de commencer non pas de la première entrée, mais de la 5e ou nième entrée?lire csv en utilisant jmeter (à partir de x)

Répondre

4

En regardant le CSVDataSet, il ne semble pas directement prendre en charge le saut à une ligne donnée. Cependant, vous pouvez émuler le même effet en exécutant d'abord N boucles où vous venez de lire à partir de l'ensemble de données et ne faites rien avec les données. Ceci est ensuite suivi d'une boucle contenant vos tests réels. Cela fait longtemps que j'ai utilisé JMeter - pour que cette approche fonctionne, vous devez partager le même CVSDataSet entre les deux boucles.

Si ce n'est pas possible, alors il existe une alternative. Dans votre boucle de test principale, utilisez un compteur et un contrôleur si. Le compteur compte à partir de 1. Le contrôleur If contient vos tests, avec la condition ${Counter}>N où N est le nombre à ignorer. ("Compteur" Dans l'expression est tout ce que vous définissez la "référence" propriété dans le compteur.)

3

2ème idée de mdma est une façon propre de le faire, mais voici deux autres options qui sont simples, mais ennuyeux à faire:

  1. Easiest. Créer des fichiers CSV pour lequel vous voulez commencer le fichier, la suppression des lignes votre ne ont pas besoin, je créerais des éléments séparés de configuration de données CSV pour chaque fichier CSV, et alors il suffit de désactiver ceux que vous ne voulez pas exécuter

  2. Moins facile: Créer une nouvelle colonne n dans votre fichier CSV, appelé "ignore". Dans les lignes que vous voulez ignorer, entrez la valeur "True". Dans votre plan de test, créez un contrôleur IF parent à vos demandes. Faites la condition If: "${ignore}"!="True" (incluez les guillemets et notez que 'true' est sensible à la casse). Cela ignorera les requêtes si la colonne 'ignore' a la valeur 'true'.

Les deux méthodes nécessitent la modification du fichier CSV, mais la méthode a deux autres applications (comme l'exclusion d'une ligne d'en-tête) et peut être rapide si vous utilisez Open Office, Excel, etc.

+0

+1 la La 2ème méthode a beaucoup de sens et est très propre. – Diadistis

+0

Notez que la 2ème méthode affecte le nombre de boucles si vous essayez de contrôler le nombre total de lignes lues depuis le fichier CSV. Par exemple, si vous voulez 10 boucles, mais que votre CSV a "ignore == TRUE" pour deux lignes, vous n'obtiendrez que 8 exécutions. Vous vous retrouvez avec une équation amusante qui indique Nombre réel de boucles == Nombre de boucles souhaitées + Plafond de (Nombre de boucles/lignes souhaitées dans le fichier CSV) – BlackGaff