Sebbene JSONPath Extractor non fornisce hasSize
funzione è ancora può essere fatto.
esempio dato JSON dalla risposta da PMD UBIK-INGENIERIE, è possibile ottenere il numero di partite su book
gamma, almeno in 2 modi:
1. Easiser (ma fragile) modo - usando Regular Expression Extractor.
Come si può vedere, ci sono 4 voci per category
come:
{ "category": "reference",
{ \"category\": \"fiction\"
...
Se si aggiunge un estrattore Regular Expression configurato come segue:

Sarà catturare tutti il category
voci e tornare corrisponde numero come di seguito:

Quindi sarà possibile utilizzare questa variabile ${matches_matchNr}
ovunque sia necessario.
Questo approccio è semplice e facile da implementare, ma è molto vulnerabile a eventuali modifiche di formato di risposta. Se si prevede che i dati JSON possano cambiare nel prossimo futuro, continuare con l'opzione successiva.
2. Più duro (ma più stabile) direzione - chiamando metodi JsonPath da Beanshell PostProcessor
JMeter trovi meccanismo di estensione di scripting Beanshell che ha accesso a tutte le variabili/proprietà a portata e l'accesso a JMeter sottostante e 3 ° API di dipendenze di terze parti. In questo caso è possibile chiamare la libreria JsonPath (che è sotto il cofano di JSONPath Extractor) direttamente da Beanshell PostProcessor.
import com.jayway.jsonpath.Criteria;
import com.jayway.jsonpath.Filter;
import com.jayway.jsonpath.JsonPath;
Object json = new String(data);
List categories = new ArrayList();
categories.add("fiction");
categories.add("reference");
Filter filter = Filter.filter(Criteria.where("category").in(categories));
List books = JsonPath.read(json, "$.store.book[?]", new Filter[] {filter});
vars.put("JSON_ARRAY_SIZE", String.valueOf(books.size()));
Il codice di cui sopra viene valutata JSONPath espressione di $.store.book[?]
contro risposta genitore campionatore, conta partite il numero e lo memorizza in ${JSON_ARRAY_SIZE}
JMeter variabile

che può essere successivamente riutilizzato in caso clausola o un'asserzione .
Riferimenti:
Controllare questa risposta: http://stackoverflow.com/a/40926919/1306012 si può guardare per quello. Usa "* _matchNr" della tua variabile. –