마크 업 정확히 다음과 같습니다 attach_file
이 작업을 얻을 수있는 방법이ID 또는 클래스 이름없이 attach_file을 사용할 수 있습니까?
<input type="file">
있습니까?
그동안 개발자에게 ID를 추가하라고 요청했지만 특별한 질문은 피하려고합니다.
마크 업 정확히 다음과 같습니다 attach_file
이 작업을 얻을 수있는 방법이ID 또는 클래스 이름없이 attach_file을 사용할 수 있습니까?
<input type="file">
있습니까?
그동안 개발자에게 ID를 추가하라고 요청했지만 특별한 질문은 피하려고합니다.
카피 바라의 #attach_field
은 기본적으로 ID, 이름 또는 관련 레이블 텍스트로 찾을 find(:file_field, locator, options).set(path)
으로 나타납니다. 그러나 다른 방법으로 요소를 찾으면 경로로 #set
을 호출하면됩니다. 한가지 주목할 점은 페이지에 하나의 파일 필드 만 있거나 페이지 필드가 하나 뿐인 페이지의 영역에 범위가있는 경우 (예 : Capybara의 최신 버전 포함) nil
을 로케이터로 전달할 수 있다는 것과 '파일'유형의 입력을 찾습니다.
그래서
attach_file(nil, 'test.txt')
은 set
와 예
당신은 천재적인 톰이에요. 그게 효과가 있었어. – Phil
@Phil FYI 현재 범위에 일치하는 요소가 하나만있는 경우 대부분의 특정 선택기 (: 필드, : checkbox, : radio_button 등) 및 동작에 nil (또는 그냥 위치 지정자를 남겨두기) 및 동작을 전달할 수 있습니다. 'attach_file' 메쏘드는 현재'nil'이 필요한 곳에 사용되지만 Capybara의 다음 버전에서는 필요 없을 것입니다. –
고마워요, 톰 제가 그걸 염두에 두겠습니다. 특정 선택자에 대해 알아두면 좋습니다. – Phil
당신이하는 XPath를 요청하는 파일을 카피 바라의 존재 테스트를 건너 뛸 것을 제외하고
에 해당? 네가 무엇을 요구하는지 나는 분명하지 않다. –
아는 한, attach_file에는 ID를 사용해야합니다. 'attach_file ('input [type = "file"],'file.txt ')'와 같은 것을하면 효과가 없습니다. 주어진 마크 업과 함께 attach_file을 사용하는 방법이 있는지 묻습니다. – Phil
우리는''와 같이 나타나도록 마크 업을 업데이트하도록 devs에게 요청했고'upload'를 id로 사용할 때 잘 동작합니다. devs에게 내 스펙을 수용하도록 변경하는 것을 피하고 싶습니다. 그래서 마크 업이 이전과 같은 방식으로 attach_file을 사용할 수 있는지 알고 있으면 좋을 것입니다. – Phil