Значение Artillery.io, полученное при захвате, недоступно при ожидании

node.js testing automated-tests node-modules artillery

219 просмотра

1 ответ

Я совершенно новичок в artillery.io и у меня проблемы. Я хочу получить значение из ответа JSON и проверить его в предложении «ожидаемо», поэтому я делаю это так:

config:
  target: 'https://api.duckduckgo.com'
  plugins:
      expect: {}
  phases:
    - duration: 1
      arrivalRate: 1
scenarios:
   - flow:
      - get:
          url: "/?q=cao&format=json"
          capture:
            - json: $RelatedTopics[0].FirstURL
              as: url
          expect:
            - statusCode: 200
            - equals:
              - "{{ url }}"
              - "https://duckduckgo.com/209/Cao_Wei"
      - log: "url is {{ url }}"

Тогда я называю артиллерию просто так:

artillery run duck.yml

Тогда я получаю что-то вроде этого:

User variables:
     target : https://api.duckduckgo.com
     $environment : undefined
     $uuid : 0774da00-b6e6-415c-bd28-0ff4bedd07ec
  not ok equals , https://duckduckgo.com/209/Cao_Wei 
  expected: all values to be equal
       got: , https://duckduckgo.com/209/Cao_Wei
  Request params:
    https://api.duckduckgo.com/?q=cao&format=json
    ""

Я опустил остальную часть вывода, потому что он слишком большой. Когда он говорит "не в порядке, значит, https://duckduckgo.com/209/Cao_Wei " мне кажется, что моя переменная url не определена.

Использование JSONPath в таких кавычках, как "$ RelatedTopics [0] .FirstURL", дает ту же проблему.

Я установил ожидаемый ( https://artillery.io/docs/plugin-expectations-assertions/ ) плагин следующим образом:

npm install -g artillery-plugin-expect

Пожалуйста, что мне здесь не хватает?

Автор: Rodolfo Источник Размещён: 15.08.2019 10:04

Ответы (1)


0 плюса

Проблема должна исчезнуть, если вы обновитесь до последней версии (1.2.1) плагина, более ранние версии имели ошибку в equalsсравнениях, включающих захваченные переменные (ссылка: https://github.com/artilleryio/artillery-plugin-expect / тянуть / 4 )

Автор: Hassy Veldstra Размещён: 20.12.2018 05:16
Вопросы из категории :
32x32