【RSpec】변수를 사용하고 싶을 때는 let
소개
RSpec의 테스트에서 변수를 쓰면 rubocop에 화가났다. 그래서 그 대처에 대해.
화내는 법
Defining constants inside of specs can cause spurious behavior. It is almost always preferable to use let
statements, anonymous class/module definitions, or ? stub_const (convention:Airbnb/SpecConstantAssignment)
let을 사용할 수 있다고 말하는 것은 알 수 있다. .
spec 에서 상수를 정의하면 스퓨리어스 동작을 유발할 수 있습니다. 대부분의 경우 let 문, 익명 클래스/모듈 정의 또는 stub_const를 사용하는 것이 바람직합니다.
그래, 스퓨리어스.
google 번역, spurious behavior
에서 거짓 행동. 이었다.
요점은 의도하지 않는 변수화가 되어, 라고 하는 일일까.
let 사용
원래는 RSpec 안에서 이렇게 썼다.
API_KEY = Rails.application.credentials.api[:API_KEY]
이것은 결국
let(:api_key) { Rails.application.credentials.api[:API_KEY] }
이렇게 바꾸었습니다.
호출할 때는
headers = {
'Authorization': "Bearer #{api_key}",
}
이렇게 보통 변수로 호출할 수 있습니다.
let 사용의 이점
Defining constants inside of specs can cause spurious behavior. It is almost always preferable to use
let
statements, anonymous class/module definitions, or ? stub_const (convention:Airbnb/SpecConstantAssignment)let을 사용할 수 있다고 말하는 것은 알 수 있다. .
spec 에서 상수를 정의하면 스퓨리어스 동작을 유발할 수 있습니다. 대부분의 경우 let 문, 익명 클래스/모듈 정의 또는 stub_const를 사용하는 것이 바람직합니다.
그래, 스퓨리어스.
google 번역,
spurious behavior
에서 거짓 행동. 이었다.요점은 의도하지 않는 변수화가 되어, 라고 하는 일일까.
let 사용
원래는 RSpec 안에서 이렇게 썼다.
API_KEY = Rails.application.credentials.api[:API_KEY]
이것은 결국
let(:api_key) { Rails.application.credentials.api[:API_KEY] }
이렇게 바꾸었습니다.
호출할 때는
headers = {
'Authorization': "Bearer #{api_key}",
}
이렇게 보통 변수로 호출할 수 있습니다.
let 사용의 이점
API_KEY = Rails.application.credentials.api[:API_KEY]
let(:api_key) { Rails.application.credentials.api[:API_KEY] }
headers = {
'Authorization': "Bearer #{api_key}",
}
등 등,
자세한 것은 모두 이쪽으로부터 가르쳐 주셨습니다.
RSpec let을 사용하는 것은 언제입니까? (번역)
끝에.
끝까지 읽어 주셔서 감사합니다
전직을 위해, 미경험의 상태로부터 Rails를 학습하고 있습니다. 올바른 지식을 꾸준히 착용하고 실력 있는 엔지니어가 되고 싶습니다. 계속해서 투고해 나가는 가운데, 그 때문에의 인풋도 필연적으로 늘어나, 성장에 연결될까라고 생각하고 있습니다.
지금 현재, 초보자라고 해서 변명은 할 수 없습니다만, 투고의 내용에 잘못되어 있는 곳이나, 덧붙여야 할 곳이 많이 있을까 생각하므로, 지적 받을 수 있으면 다행입니다. 이 기사를 읽어 주셔서 감사합니다.
Reference
이 문제에 관하여(【RSpec】변수를 사용하고 싶을 때는 let), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/waniwaninowani/items/857dc4e64a158666b32c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)