1

我正在使用 Sahi 进行 Web 应用程序的测试自动化。我必须为 sahi 编写一个脚本来上传文件。但不幸的是,我不知道路。有人可以帮我吗?

4

4 回答 4

3

文件上传可能是一件复杂的事情,具体取决于您对上传所做的任何验证。首先,您可以尝试以下方法:

语法:

_setFile(element, filePath [, actionURL])

例如:_setFile(_file("id"), "C:\abc\efg.jpg", "formSubmit.jsp");

如果文件字段上有 javascript 验证,你可以试试这个 hack。在提交文件之前,将字段的类型更改为“文本”,然后设置其值。例如。

// set the file
_setFile(_file("file"), "scripts/demo/uploadme.txt");
// Change the "type" attribute of file field
if (_isIE()){
_call(_file("file").outerHTML = _file("file").outerHTML.replace(/type=['"]?file['"]?/, "type=text"));
}else{
_call(_file("file").type = "text");
}
// Set the value into the textbox
_setValue(_textbox("file"), "scripts/demo/uploadme.txt");

这适用于大多数情况。如果您仍然收到任何错误,您可以在此处发布。

谢谢,维维克

于 2012-10-19T02:41:22.287 回答
0

您可以使用以下

_setFile(_file("id"), "C:\\abc\\efg.jpg");

不确定您是否需要更复杂的东西?

于 2012-02-20T21:23:42.493 回答
0

请注意,从Sahi 4.3开始,有一个_setFile2函数可以自动处理 js 验证并执行此输入类型转换。

于 2013-02-22T12:26:29.027 回答
0

我已经使用函数解决了setFile2,在内部将字段类型更改为text

于 2015-10-21T15:47:54.080 回答