FlameDra
FlameDra

Reputation: 2087

Selenium IDE - Upload file into field

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:

screenshot 1

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:

screenshot 2

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

Answers (3)

CodeMonga
CodeMonga

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

AndreVitorio
AndreVitorio

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

Antony Lobo
Antony Lobo

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.

SeleniumIDE_uploadfile

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

Related Questions