Reputation: 2087
I'm creating a testing suite to automate some parts of data input on my web application. I have a page where I can click on a button to upload a document to the application. It looks something like this:
Once the Add New Attachment button is clicked, it opens the browser's file explorer to select a document to upload. I'm trying to replicate this within Selenium IDE.
Here is what it looks like as of now:
However, this part seems to fail. Does anyone know how to achieve a similar process using Selenium IDE? I'm on Chrome and Firefox.
Upvotes: 11
Views: 24513
Reputation: 105
I had problems with files and folders starting with the letter "r" -> the path delimiter on windows "" in conjunction with the "r" resulted in "\r" which is interpreted as a carriage return - this led to false file names and the upload did not work.
Upvotes: 0
Reputation: 930
If you get the
{"code":-32000,"message":"Not allowed"}
on Chrome, follow the steps below:
Window > More Tools > Extensions > Selenium IDE > Details
Then turn on the 'Allow access to file URLs' option.
I was having the same problem and this worked for me.
Upvotes: 16
Reputation: 51
It is possible to upload the files using selenium IDE. It can be done as mentioned below.
|Command|Target|Value|
|type|target_location_path|location_of_the_file_in_your_system|
Example:
|type|id=ConsignmentCustomerInvoiceFilename|C:\Users\abc\Desktop\img1.jpg|
You can identify the "target_location_path" by manually uploading the file and then finding the xpath of the uploaded file in the web app.
Please refer below screenshot to get a better understanding.
You can add the system path to the IDE test by using the below code.
<tr>
<td>storeEval</td>
<td>Preferences.getString(TestSuite.TEST_SUITE_DIRECTORY_PREF);</td>
<td>testSuiteFolder</td>
</tr>
<tr>
<td>type</td>
<td>id=QuestionUpload_file</td>
<td>${testSuiteFolder}/resources/question_upload.csv</td>
</tr>
Upvotes: 5