dredd 및 api blueprint을 사용하여 여러 개의 API 호출을 실행하여 사이트를 테스트하려고합니다. 같은 장소에서 실행되는 Selenium 테스트가 있으므로 circleCI에서 테스트를 실행하고 싶습니다. 각 트랜잭션에는 머리글에 쿠키로 설정된 두 개의 토큰이 있어야합니다. 이상적으로, 이들은 dredd.yml 파일에서 설정됩니다. 로컬 컴퓨터에서 실행할 때 ACCESS_TOKEN
및 REFRESH_TOKEN
을 실제 값으로 바꾸면 테스트가 예상대로 실행됩니다.dredd.yml 파일에서 dredd 테스트를위한 환경 변수를 어떻게 설정할 수 있습니까?
circle.yml :
test:
override:
- dredd
dredd.yml 헤더 access_token이와 refresh_token도가 circleCI의 환경 변수에 설정된 실제 값으로 대체 얻을
header: ['Cookie: access_token=ACCESS_TOKEN; refresh_token=REFRESH_TOKEN']
. 나는 또한 시도했다 : access_token=$[ACCESS_TOKEN]
, access_token=$["ACCESS_TOKEN"]
및 access_token=$ACCESS_TOKEN
. 이들 중 어느 것도 첫 번째 API 호출의 헤더에서 대체되지 않습니다. 내가 파일을 YAML에 새로운 오전, 그래서 아마 기본 뭔가를 누락 {"Content-Type":"application/json; charset=utf-8","User-Agent":"Dredd/1.4.0 (Darwin 14.5.0; x64)","Cookie":" access_token=$ACCESS_TOKEN; refresh_token=$REFRESH_TOKEN"}
,하지만 난 잠시 동안 검색 한 : 같은
헤더 보인다. 후크 파일은 node.js로 작성되었으므로 여기서는 루비/레일 도움말이 유용하지 않을 것이라고 생각합니다. 질문에 빠진 것이 있으면 주저하지 말고 알려주세요.