File upload 用于选择和上载文件的sahi脚本

File upload 用于选择和上载文件的sahi脚本,file-upload,automated-tests,sahi,File Upload,Automated Tests,Sahi,我正在使用Sahi实现web应用程序的测试自动化。我必须为sahi编写一个脚本来上传文件。但不幸的是我不知道路。有人能帮我吗?你可以使用以下工具 _setFile(_file("id"), "C:\\abc\\efg.jpg"); 不确定是否需要更复杂的内容?文件上载可能是一件复杂的事情,这取决于您对上载所做的任何验证。对于初学者,您可以尝试以下方法: Synatx: _setFile(element, filePath [, actionURL]) 例如: _setFile(_file(“

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

你可以使用以下工具

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

不确定是否需要更复杂的内容?

文件上载可能是一件复杂的事情,这取决于您对上载所做的任何验证。对于初学者,您可以尝试以下方法:

Synatx:

_setFile(element, filePath [, actionURL])
例如: _setFile(_file(“id”),“C:\abc\efg.jpg”,“formSubmit.jsp”)

如果文件字段上有javascript验证,您可以尝试此黑客攻击。提交文件前,将字段类型更改为“文本”,然后设置其值。例如

// 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");
这适用于大多数情况。如果你仍然得到任何错误,你可以张贴在这里

谢谢,
Vivek

请注意,截至,有一个
\u setFile2
函数自动处理js验证并执行此输入类型转换。

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

时,我需要更复杂的内容,因为文件上载未转换为文本框。您需要在问题中提供更多详细信息,以及一些出错位置的示例代码。你的问题是什么?这里已经有一个答案在两年前发布了,上面提到了这个功能。你还有什么要补充的吗?