2017-09-13 1 views
1
  • def count = * print response.teams[0].teamMembers.length lancers francs ci-dessous erreur

com.jayway.jsonpath.PathNotFoundException: attendu pour trouver un objet à la propriété [ 'length'] dans le chemin $ ['teams'] [0] ['teamMembers'] mais trouvé 'net.minidev.json.JSONArray'.
Ce n'est pas un objet json selon le JsonProvider: 'com.jayway.jsonpath.spi.json.JsonSmartJsonProvider'.définir une variable pour définir la longueur d'un tableau est un échec, mais affirmer et imprimer des travaux

  • print response.teams[0].teamMembers.length et
  • assert response.teams[0].teamMembers.length == 9
    travaillent très bien.

Toute aide ici est très appréciée.

Répondre

1

Oui, Karate prend le côté droit comme Json-Path (ce qui est bien dans 90% des cas). Utilisez des parenthèses pour forcer l'évaluation JavaScript si nécessaire.

Essayez ceci:

def count = (response.teams[0].teamMembers.length) 

Pour une explication détaillée, s'il vous plaît se référer à cette section dans la documentation: Karate Expressions

+0

Grand, cela fonctionne !!! – Kumar112