在弹出窗口中上传文件

时间:2009-06-11 04:13:29

标签: watin

我正在使用 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 :(得分:0)

为什么不设置字段(保存路径)而不显示弹出窗口或单击任何按钮?您只需获取文本字段Id&做类似的事情:

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

答案 1 :(得分:0)

我面临类似问题,但使用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"));
                            }

虽然我还没弄明白如何实际点击“打开”按钮,但此代码解决了文件选择窗口立即关闭的问题