Cypress: передать массив в качестве аргумента командной строки - PullRequest
0 голосов
/ 04 декабря 2018

Я работаю на кипарис для автоматического тестирования.Я хочу передать список переменных через командную строку.

Например:

$(npm bin)/cypress run --env pages=page1,page2 --spec 'cypress/integration/atests/test.spec.js'

Но это не удается.Ошибка выдается как Cannot read property 'split' of undefined at piperToCommas.

Может кто-нибудь сказать / направить меня, как решить эту проблему?

1 Ответ

0 голосов
/ 05 декабря 2018

РЕДАКТИРОВАТЬ:

Я думаю, вы могли бы передать свои переменные с помощью JSON, а затем вы можете получить доступ к ним как обычный объект JavaScript.

Пример:

$(npm bin)/cypress run --env token='{"a":"5", "b":{"c":"x"}}'

Теперь в вашей спецификации, если вы позвоните Cypress.env('token'), вы получите этот объект в качестве вывода.

enter image description here

Если вы хотитепеременная среды как массив, вы можете передать ее следующим образом:

$(npm bin)/cypress run --env token='["a", "b"]'

Вывод:

enter image description here


ЕслиЯ правильно понял вопрос, вы должны передать переменные в виде:

cypress run --env name1=value1,name2=value2,...

Пример:

cypress run --env host=kevin.dev.local,api_server=http://localhost:8888/api/v1

Это создаст две переменные окружения, host со значением kevin.dev.local и api_server со значением http://localhost:8888/api/v1.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...