How to Test File Downloads

Test file downloads in Endtest: trigger downloads, capture the most recent file, and assert on PDF, CSV, JSON, or image file contents.

Introduction

In a Web Test, you can add steps to verify file downloads.

After you trigger a file download, you can extract information about the file in variables.
Then, you can use those variables in other steps, such as Assertions and If Statements.

Details

You can extract information about a downloaded file by using these methods from the Set Variable action:

  1. Extract Name of Most Recent Downloaded File
  2. Extract Size of Most Recent Downloaded File
  3. Extract MIME Type of Most Recent Downloaded File
  4. Link to Most Recent Downloaded File

You can then use the resulting variables in later steps, such as Add Assertion → Variable Assertion.

Waiting for a download to complete Endtest will automatically wait for a download to complete when using one of those methods. There is no need to add a Pause step, unless the download takes more than 120 seconds, which is the default download timeout.

After you've extracted the information into variables, you can verify the values from those variables by using the Variable Assertion method from the Add Assertion action.

You can also clear the Downloads directory by using the Clear Downloads Directory method from the Miscellaneous action.

Testing file content

The Link to Most Recent Downloaded File method from the Set Variable action uploads the downloaded file from the machine that executed the test.

The resulting variable contains a link that can be used to open or download that file.

If the file type can be displayed directly in the browser (such as .txt, .jpg, .mp4, etc.), you can use a Go to URL step to open and view the file in the browser.

Methods from the Endtest Utilities API can also be used to convert files to HTML (for example convertCSVtoHTML or convertPDFtoHTML). This makes the content easier to view and validate in the browser.

PDF files are a special case. More details can be found in the PDF Testing chapter.
Browser Support File downloads can be tested in Chrome, Edge, Firefox, and mobile browsers. File downloads cannot be tested in Safari and Internet Explorer 11.