2010-06-17 2 views
1

나는 걸렸습니다. WatiN을 사용하여 파일을 업로드하려고합니다. 업로드 상자를로드 할 수 있지만 빠르게 사라집니다. 현재 내 코드의 마지막 줄은 다음과 같습니다.WatiN 파일 업로드

그림을 선택하기 위해 대화 상자가로드되지만 사라집니다. 자동으로 상자의 경로를 설정할 수 있습니까, 예 : "C : /Desktop/image.jpg"?

또한 계속하기 전에 업로드가 완료 될 때까지 기다릴 수 있습니까?

도움을 많이 받으실 수 있습니다.

감사합니다.

답변

0

직접 질문에 답변하지는 않지만 대화 상자를 자동으로 취소하는 DialogWatcher가있는 것 같습니다.

+0

FileUpload()의 Set() 메서드를 사용했지만 이미지를 업로드 할 때 상자를 닫고 '지정되지 않은 오류'가 발생합니다. '이미지 업로드 중'이라고 표시되어 실제 업로드가 작동합니다. 이상한 사람이 여기 있습니다. –

+0

죄송합니다. 이미지가 실제로 업로드됩니다. 그러나 오류를 반환합니다. –

0

왜 당신은 단지 텍스트를 전송하려고 .. 다이얼로그에서 선택해야하나요 :

ie.FileUpload(Find.ById("profile_file")).Text = "C:/Desktop/image.jpg"; 
+0

게시자가이 질문 및 검색을 확인해야합니다. http://stackoverflow.com/questions/3043391/use-watin-for-automation-upload-file-on-the-website –

0

가 보안 조치로, 브라우저는 스크립트 파일의 입력 값을 설정하는 것을 허용하지 않습니다. 그랬다면 상상해보십시오, 연락처 양식이있는 페이지에 숨겨진 파일 입력을 넣고 사용자의 허가없이 c : \ topsecretinfo.txt 값을 설정할 수 있습니다. 사용자가 양식을 제출할 때, 나는 그들의 최고 비밀 정보를 가지고있을 것이다.

행운이있다, 나는 오늘이 문제로 실행하고이 내가 그것을 해결하기 위해 무슨 짓을 :

  • 는 "testUpload가"라는 페이지에 새 숨겨진 필드를 만들었습니다. 내 테스트 서버 측에서 파일
  • 의 경로에 숨겨진 필드의 값을 설정하는 Watin 사용
  • , 나는이 분야를 확인하고, 대신에 게시 된 파일을 읽는 존재하는 경우,이 읽기 내 로컬 기기의 파일
0

이것은 6 년이나 지났지 만 다른 사람 (나 같은)이 여전히 문제가있는 경우 여기 해결책이 있습니다.

파일 대화 상자를 작성하려면 다음을 수행하십시오

ie.FileUpload(Find.ById("profile_file")).Set("filename.txt"); 

이 자동으로 파일 대화 상자를 가져옵니다. 그러면 파일 선택 텍스트 필드에 텍스트가 자동으로 입력됩니다.

모든 sendkeys가 필요하지 않습니다.