Загрузка файла во всплывающем окне - PullRequest
0 голосов
/ 11 июня 2009

Я использую WatiN инструмент автоматизации. У меня есть сценарий, где мне нужно нажать на кнопку, которая открывает куклу, из которой мне нужно загрузить файл. Я попытался использовать Fileupload, но это не работает, потому что окно выбора файла появляется и закрывается сразу, без загрузки файла. Пожалуйста, предложите решение. Ниже код, который я использую:

ie.Button(Find.ByText("Upload_File")).ClickNoWait();
//now popup appears

IE popup = IE.AttachToIE(Find.ByUrl("http://localhost/admin/Uploadfile.aspx"));
popup.Fileupload(Find.ById("upload1_File")).set("D:\vinay\watin.zip");

Ответы [ 2 ]

0 голосов
/ 26 августа 2015

Я сталкиваюсь с подобной проблемой, но использую FileUploadDialogHandler

FileUploadDialogHandler fileupload = new FileUploadDialogHandler(filepath);
                            using (new UseDialogOnce(browser.DialogWatcher, fileupload))
                            {
                                browser.Frames[2].Div(Find.ById("draftTempMaterialFileDiv")).Span(Find.ByText("Document Attachment ")).ClickNoWait();
                                browser.FileUpload(Find.ByTitle("Choose File to Upload")).Set((@"E:\TEST_PROJECTS\3DLEX_New_Lib\TEST Template.docx"));
                            }

Хотя я еще не понял, как на самом деле нажать на кнопку Открыть, этот код решил проблему закрытия окна выбора файла

0 голосов
/ 06 августа 2010

Почему бы вам просто не установить поле (содержащее путь), не показывая всплывающее окно или нажимая какие-либо кнопки? Все, что вам нужно, это получить идентификатор текстового поля и сделать что-то вроде:

ie.TextField("Upload_File_Path_Field_ID")).Text = "D:\vinay\watin.zip";
...