Class DslJsonExtractor

    • Constructor Detail

      • DslJsonExtractor

        public DslJsonExtractor​(String varName,
                                String query)
    • Method Detail

      • matchNumber

        public DslJsonExtractor matchNumber​(int matchNumber)
        Sets the match number to be extracted.

        For example, if a response looks like this: [{"name":"test"},{"name":"tester"}] and you use [].name as JMESPath, first match (1) would extract test and second match (2) would extract tester.

        When not specified, the first match will be used. When 0 is specified, a random match will be used. When negative, all the matches are extracted to variables with name <variableName>_<matchNumber>, the number of matches is stored in <variableName>_matchNr, and default value is assigned to <variableName>.

        Parameters:
        matchNumber - specifies the match number to use.
        Returns:
        the extractor for further configuration and usage.
      • defaultValue

        public DslJsonExtractor defaultValue​(String defaultValue)
        Sets the default value to be stored in the JMeter variable when no match is found.

        When match number is negative then the value is always assigned to the variable name.

        A common pattern is to specify this value to a known value (e.g.: <VAR>_EXTRACTION_FAILURE) and then add some assertion on the variable to mark request as failure when the match doesn't work.

        When not specified, then the variable will be assigned to empty string.

        Parameters:
        defaultValue - specifies the default value to be used.
        Returns:
        the extractor for further configuration and usage.
      • queryLanguage

        public DslJsonExtractor queryLanguage​(DslJsonExtractor.JsonQueryLanguage queryLanguage)
        Allows selecting the query language to use for extracting values from a given JSON.
        Parameters:
        queryLanguage - specifies the query language to use to extracting values. When no value is specified, JMESPath is used by default.
        Returns:
        the extractor for further configuration and usage.
        Since:
        1.12
        See Also:
        DslJsonExtractor.JsonQueryLanguage