Where to Upload a File to Browse on Safari

Examination File Upload Functionality

Test your spider web app'due south file upload functionality on BrowserStack Automate.

Introduction

This document guides you on how to test your spider web app's File Upload functionality in Automate by:

  • Uploading files from your machine
  • Uploading pre-loaded files
  • Uploading files that are downloaded in the same automate session

Supported Browsers and Operating Systems

Component Listing
Supported OS All desktop and mobile Os
Supported Browser All (Chrome, Firefox, Safari, IE, Edge)

Uploading files from your machine

You can send a file to remote browsers—directly from your workstation—in Automate, through the LocalFileDetector method.

                                                  import                          org.openqa.selenium.By                          ;                          import                          org.openqa.selenium.JavascriptExecutor                          ;                          import                          org.openqa.selenium.remote.DesiredCapabilities                          ;                          import                          org.openqa.selenium.remote.LocalFileDetector                          ;                          import                          org.openqa.selenium.remote.RemoteWebDriver                          ;                          import                          org.openqa.selenium.back up.ui.ExpectedConditions                          ;                          import                          org.openqa.selenium.back up.ui.WebDriverWait                          ;                          public                          class                          JavaSample                          {                          public                          static                          final                          String                          AUTOMATE_USERNAME                          =                          "YOUR_USERNAME"                          ;                          public                          static                          terminal                          Cord                          AUTOMATE_KEY                          =                          "YOUR_ACCESS_KEY"                          ;                          public                          static                          final                          String                          URL                          =                          "https://"                          +                          AUTOMATE_USERNAME                          +                          ":"                          +                          AUTOMATE_KEY                          +                          "@hub-cloud.browserstack.com/wd/hub"                          ;                          public                          static                          void                          main                          (                          String                          []                          args                          )                          throws                          Exception                          {                          DesiredCapabilities                          caps                          =                          new                          DesiredCapabilities                          ();                          caps                          .                          setCapability                          (                          "browser"                          ,                          "internet explorer"                          );                          caps                          .                          setCapability                          (                          "os"                          ,                          "windows"                          );                          caps                          .                          setCapability                          (                          "browser_version"                          ,                          "eleven.0"                          );                          caps                          .                          setCapability                          (                          "os_version"                          ,                          "10"                          );                          caps                          .                          setCapability                          (                          "browserstack.sendKeys"                          ,                          "truthful"                          );                          caps                          .                          setCapability                          (                          "browserstack.debug"                          ,                          "truthful"                          );                          caps                          .                          setCapability                          (                          "name"                          ,                          "Bstack-[Coffee] Sample Test"                          );                          RemoteWebDriver                          driver                          =                          new                          RemoteWebDriver                          (                          new                          URL                          (                          URL                          ),                          caps                          );                          driver                          .                          setFileDetector                          (                          new                          LocalFileDetector                          ());                          driver                          .                          become                          (                          "http://world wide web.fileconvoy.com/"                          );                          driver                          .                          findElement                          (                          By                          .                          id                          (                          "upfile_0"                          )).                          sendKeys                          (                          "//local//file//path"                          );                          driver                          .                          findElement                          (                          By                          .                          id                          (                          "readTermsOfUse"                          )).                          click                          ();                          driver                          .                          findElement                          (                          By                          .                          name                          (                          "upload_button"                          )).                          submit                          ();                          JavascriptExecutor                          jse                          =                          (                          JavascriptExecutor                          )                          commuter                          ;                          try                          {                          WebDriverWait                          look                          =                          new                          WebDriverWait                          (                          commuter                          ,                          v                          );                          wait                          .                          until                          (                          ExpectedConditions                          .                          presenceOfElementLocated                          (                          Past                          .                          id                          (                          "TopMessage"                          )));                          if                          (                          driver                          .                          findElementById                          (                          "TopMessage"                          ).                          getText                          ().                          contains                          (                          "successfully uploaded"                          ))                          {                          jse                          .                          executeScript                          (                          "browserstack_executor: {\"action\": \"setSessionStatus\", \"arguments\": {\"status\": \"passed\", \"reason\": \"File uploaded successfully\"}}"                          );                          }                          else                          {                          jse                          .                          executeScript                          (                          "browserstack_executor: {\"action\": \"setSessionStatus\", \"arguments\": {\"condition\": \"failed\", \"reason\": \"File upload failed\"}}"                          );                          }                          }                          take hold of                          (                          Exception                          e                          )                          {                          jse                          .                          executeScript                          (                          "browserstack_executor: {\"action\": \"setSessionStatus\", \"arguments\": {\"condition\": \"failed\", \"reason\": \"File could not be uploaded in 5 seconds\"}}"                          );                          }                          commuter                          .                          quit                          ();                          }                          }                                              
                                                  const                          webdriver                          =                          crave                          (                          "                          selenium-webdriver                          "                          );                          const                          remote                          =                          crave                          (                          "                          selenium-webdriver/remote                          "                          );                          // Input capabilities                          const                          capabilities                          =                          {                          "                          browserName                          "                          :                          "                          Cyberspace Explorer                          "                          ,                          "                          browser_version                          "                          :                          "                          11.0                          "                          ,                          "                          os                          "                          :                          "                          Windows                          "                          ,                          "                          os_version                          "                          :                          "                          x                          "                          ,                          "                          name                          "                          :                          "                          Bstack-[NodeJS] Upload Exam                          "                          ,                          "                          browserstack.sendKeys                          "                          :                          "                          true                          "                          ,                          "                          browserstack.debug                          "                          :                          "                          true                          "                          ,                          "                          browserstack.user                          "                          :                          "                          YOUR_USERNAME                          "                          ,                          "                          browserstack.cardinal                          "                          :                          "                          YOUR_ACCESS_KEY                          "                          };                          const                          commuter                          =                          new                          webdriver                          .                          Builder                          ()                          .                          usingServer                          (                          "                          https://hub-cloud.browserstack.com/wd/hub                          "                          )                          .                          withCapabilities                          (                          capabilities                          )                          .                          build                          ();                          //This volition detect your local file                          driver                          .                          setFileDetector                          (                          new                          remote                          .                          FileDetector                          ());                          (                          async                          ()                          =>                          {                          wait                          driver                          .                          get                          (                          "                          http://www.fileconvoy.com                          "                          );                          const                          filePathElement                          =                          await                          driver                          .                          findElement                          (                          webdriver                          .                          By                          .                          id                          (                          "                          upfile_0                          "                          ));                          await                          filePathElement                          .                          sendKeys                          (                          "                          //local//file//path                          "                          );                          wait                          (                          look                          driver                          .                          findElement                          (                          webdriver                          .                          By                          .                          id                          (                          "                          readTermsOfUse                          "                          ))).                          click                          ();                          await                          (                          await                          driver                          .                          findElement                          (                          webdriver                          .                          By                          .                          name                          (                          "                          upload_button                          "                          ))).                          click                          ();                          try                          {                          wait                          driver                          .                          expect                          (                          webdriver                          .                          until                          .                          elementIsVisible                          ((                          await                          commuter                          .                          findElement                          (                          webdriver                          .                          By                          .                          id                          (                          '                          TopMessage                          '                          )))),                          5000                          );                          if                          ((                          wait                          commuter                          .                          findElement                          (                          webdriver                          .                          Past                          .                          id                          (                          '                          TopMessage                          '                          )).                          getText                          ()).                          includes                          (                          '                          successfully uploaded                          '                          ))                          {                          await                          driver                          .                          executeScript                          (                          '                          browserstack_executor: {"activity": "setSessionStatus", "arguments": {"status":"passed","reason": "File upload successful"}}                          '                          );                          }                          else                          {                          look                          driver                          .                          executeScript                          (                          '                          browserstack_executor: {"activeness": "setSessionStatus", "arguments": {"condition":"failed","reason": "File upload failed"}}                          '                          );                          }                          }                          take hold of                          (                          e                          )                          {                          wait                          driver                          .                          executeScript                          (                          '                          browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "File could not be uploaded in time"}}                          '                          );                          }                          expect                          driver                          .                          quit                          ();                          })();                                              
                                                  using                          Arrangement                          ;                          using                          Organization.Text                          ;                          using                          OpenQA.Selenium                          ;                          using                          OpenQA.Selenium.Remote                          ;                          namespace                          SeleniumTest                          {                          class                          Program                          {                          static                          void                          Main                          (                          cord                          []                          args                          )                          {                          Encoding                          .                          RegisterProvider                          (                          CodePagesEncodingProvider                          .                          Instance                          );                          IWebDriver                          driver                          ;                          OpenQA                          .                          Selenium                          .                          IE                          .                          InternetExplorerOptions                          capability                          =                          new                          OpenQA                          .                          Selenium                          .                          IE                          .                          InternetExplorerOptions                          ();                          capability                          .                          AddAdditionalCapability                          (                          "browser"                          ,                          "IE"                          ,                          truthful                          );                          adequacy                          .                          AddAdditionalCapability                          (                          "browser_version"                          ,                          "11"                          ,                          true                          );                          capability                          .                          AddAdditionalCapability                          (                          "bone"                          ,                          "Windows"                          ,                          true                          );                          capability                          .                          AddAdditionalCapability                          (                          "os_version"                          ,                          "x"                          ,                          true                          );                          capability                          .                          AddAdditionalCapability                          (                          "browserstack.sendKeys"                          ,                          "true"                          ,                          true                          );                          capability                          .                          AddAdditionalCapability                          (                          "browserstack.debug"                          ,                          "truthful"                          ,                          true                          );                          capability                          .                          AddAdditionalCapability                          (                          "browserstack.user"                          ,                          "YOUR_USERNAME"                          ,                          truthful                          );                          adequacy                          .                          AddAdditionalCapability                          (                          "browserstack.central"                          ,                          "YOUR_ACCESS_KEY"                          ,                          true                          );                          adequacy                          .                          AddAdditionalCapability                          (                          "name"                          ,                          "Bstack-[C_sharp] Sample Exam"                          ,                          true                          );                          commuter                          =                          new                          RemoteWebDriver                          (                          new                          Uri                          (                          "http://hub-cloud.browserstack.com/wd/hub/"                          ),                          capability                          );                          commuter                          .                          Navigate                          ().                          GoToUrl                          (                          "http://www.fileconvoy.com"                          );                          IWebElement                          uploadFile                          =                          driver                          .                          FindElement                          (                          By                          .                          Id                          (                          "upfile_0"                          ));                          Console                          .                          WriteLine                          (                          driver                          .                          Title                          );                          String                          path                          =                          "//path//to//your//local//file"                          ;                          //File path in your local machine                          LocalFileDetector                          detector                          =                          new                          LocalFileDetector                          ();                          var                          allowsDetection                          =                          driver                          as                          IAllowsFileDetection                          ;                          if                          (                          allowsDetection                          !=                          zip                          )                          {                          allowsDetection                          .                          FileDetector                          =                          detector                          ;                          }                          uploadFile                          .                          SendKeys                          (                          path                          );                          driver                          .                          FindElement                          (                          By                          .                          Id                          (                          "readTermsOfUse"                          )).                          Click                          ();                          driver                          .                          FindElement                          (                          By                          .                          Id                          (                          "upload_button"                          )).                          Click                          ();                          driver                          .                          Manage                          ().                          Timeouts                          ().                          ImplicitWait                          =                          TimeSpan                          .                          FromSeconds                          (                          5                          );                          if                          (                          driver                          .                          FindElement                          (                          By                          .                          CssSelector                          (                          "#TopMessage"                          )).                          Text                          .                          Contains                          (                          "successfully uploaded"                          ))                          {                          ((                          IJavaScriptExecutor                          )                          driver                          ).                          ExecuteScript                          (                          "browserstack_executor: {\"activity\": \"setSessionStatus\", \"arguments\": {\"condition\":\"passed\", \"reason\": \"File uploaded successfully!\"}}"                          );                          }                          else                          {                          ((                          IJavaScriptExecutor                          )                          driver                          ).                          ExecuteScript                          (                          "browserstack_executor: {\"activeness\": \"setSessionStatus\", \"arguments\": {\"condition\":\"failed\", \"reason\": \"File upload failed!\"}}"                          );                          }                          driver                          .                          Quit                          ();                          }                          }                          }                                              
                                                  <?php                          require_once                          (                          'vendor/autoload.php'                          );                          use                          Facebook\WebDriver\Remote\RemoteWebDriver                          ;                          utilize                          Facebook\WebDriver\WebDriverBy                          ;                          use                          Facebook\WebDriver\Remote\LocalFileDetector                          ;                          $caps                          =                          assortment                          (                          "browser"                          =>                          "Internet Explorer"                          ,                          "browser_version"                          =>                          "11.0"                          ,                          "os"                          =>                          "Windows"                          ,                          "os_version"                          =>                          "10"                          ,                          "browserstack.sendKeys"                          =>                          "truthful"                          ,                          "proper name"                          =>                          "Bstack-[Php] Sample Examination"                          ,                          "browserstack.debug"                          =>                          "true"                          ,                          "pageLoadStrategy"                          =>                          'none'                          );                          $web_driver                          =                          RemoteWebDriver                          ::                          create                          (                          "https://YOUR_USERNAME:YOUR_ACCESS_KEY@hub-cloud.browserstack.com/wd/hub"                          ,                          $caps                          );                          $web_driver                          ->                          get                          (                          "http://www.fileconvoy.com"                          );                          $file_input                          =                          $web_driver                          ->                          findElement                          (                          WebDriverBy                          ::                          id                          (                          "upfile_0"                          ));                          $file_input                          ->                          setFileDetector                          (                          new                          LocalFileDetector                          ());                          $file_input                          ->                          sendKeys                          (                          "//local//file//path"                          );                          $web_driver                          ->                          findElement                          (                          WebDriverBy                          ::                          id                          (                          "readTermsOfUse"                          ))                          ->                          click                          ();                          $web_driver                          ->                          findElement                          (                          WebDriverBy                          ::                          proper name                          (                          "upload_button"                          ))                          ->                          submit                          ();                          sleep                          (                          5                          );                          $web_driver                          ->                          quit                          ();                          ?>                                              
                                                  from                          selenium                          import                          webdriver                          from                          selenium.webdriver.common.keys                          import                          Keys                          from                          selenium.webdriver.common.desired_capabilities                          import                          DesiredCapabilities                          from                          selenium.common.exceptions                          import                          TimeoutException                          from                          selenium.webdriver.support.ui                          import                          WebDriverWait                          desired_cap                          =                          {                          'browser'                          :                          'Internet Explorer'                          ,                          'browser_version'                          :                          '11.0'                          ,                          'bone'                          :                          'Windows'                          ,                          'os_version'                          :                          '10'                          ,                          'browserstack.sendKeys'                          :                          'true'                          ,                          'browserstack.debug'                          :                          'truthful'                          ,                          'name'                          :                          'Bstack-[Python] Sample Test'                          }                          driver                          =                          webdriver                          .                          Remote                          (                          command_executor                          =                          'http://YOUR_USERNAME:YOUR_ACCESS_KEY@hub.browserstack.com/wd/hub'                          ,                          desired_capabilities                          =                          desired_cap                          )                          driver                          .                          get                          (                          'http://www.fileconvoy.com'                          )                          driver                          .                          find_element_by_id                          (                          'upfile_0'                          ).                          send_keys                          (                          '//local//file//path'                          )                          driver                          .                          find_element_by_id                          (                          'readTermsOfUse'                          ).                          click                          ()                          commuter                          .                          find_element_by_name                          (                          'upload_button'                          ).                          submit                          ()                          try                          :                          WebDriverWait                          (                          driver                          ,                          five                          ).                          until                          (                          lambda                          ten                          :                          x                          .                          find_element_by_id                          (                          'TopMessage'                          ))                          if                          (                          driver                          .                          find_element_by_id                          (                          'TopMessage'                          ).                          text                          ==                          "Your file(southward) have been successfully uploaded."                          ):                          # Setting the condition of examination as 'passed' or 'failed' based on the condition; if title of the web page starts with 'BrowserStack'                                                    driver                          .                          execute_script                          (                          'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"passed", "reason": "File uploaded!"}}'                          )                          else                          :                          driver                          .                          execute_script                          (                          'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed", "reason": "File upload failed"}}'                          )                          except                          TimeoutException                          :                          driver                          .                          execute_script                          (                          'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed", "reason": "File failed to upload in five seconds"}}'                          )                          driver                          .                          quit                          ()                                              
                                                  require                          'rubygems'                          crave                          'selenium-webdriver'                          # Input capabilities                          caps                          =                          Selenium                          ::                          WebDriver                          ::                          Remote                          ::                          Capabilities                          .                          new                          caps                          [                          'browser'                          ]                          =                          'Internet Explorer'                          caps                          [                          'browser_version'                          ]                          =                          '11.0'                          caps                          [                          'os'                          ]                          =                          'Windows'                          caps                          [                          'os_version'                          ]                          =                          '10'                          caps                          [                          'proper noun'                          ]                          =                          'Bstack-[Ruby] Sample Test'                          caps                          [                          'browserstack.sendKeys'                          ]                          =                          'truthful'                          caps                          [                          'browserstack.debug'                          ]                          =                          'truthful'                          caps                          [                          "javascriptEnabled"                          ]                          =                          'true'                          #Enabling the javascriptEnabled capability to execute javascript in the test script                          driver                          =                          Selenium                          ::                          WebDriver                          .                          for                          (                          :remote                          ,                          :url                          =>                          "http://YOUR_USERNAME:YOUR_ACCESS_KEY@hub-cloud.browserstack.com/wd/hub"                          ,                          :desired_capabilities                          =>                          caps                          )                          driver                          .                          file_detector                          =                          lambda                          do                          |                          args                          |                          str                          =                          args                          .                          first                          .                          to_s                          str                          if                          File                          .                          exist?                          (                          str                          )                          end                          driver                          .                          navigate                          .                          to                          "http://world wide web.fileconvoy.com"                          commuter                          .                          find_element                          (                          :id                          ,                          "upfile_0"                          ).                          send_keys                          (                          "//local//file//path"                          )                          driver                          .                          execute_script                          (                          'certificate.getElementById("readTermsOfUse").click();'                          )                          commuter                          .                          find_element                          (                          :name                          ,                          "upload_button"                          ).                          submit                          sleep                          (                          five                          )                          commuter                          .                          quit                                              
                                                  apply                          Selenium::Remote::                          Driver                          ;                          #Input capabilities                          my                          $extraCaps                          =                          {                          "                          browser                          "                          =>                          "                          Net Explorer                          ",                          "                          browser_version                          "                          =>                          "                          11.0                          ",                          "                          bone                          "                          =>                          "                          Windows                          ",                          "                          os_version                          "                          =>                          "                          ten                          ",                          "                          browserstack.sendKeys                          "                          =>                          "                          true                          ",                          "                          browserstack.debug                          "                          =>                          "                          true                          ",                          "                          proper name                          "                          =>                          "                          Bstack-[Perl] Sample Exam                          "                          };                          my                          $login                          =                          "                          YOUR_USERNAME                          ";                          my                          $key                          =                          "                          YOUR_ACCESS_KEY                          ";                          my                          $host                          =                          "                          $login                          :                          $key                          \@                          hub-cloud.browserstack.com                          ";                          my                          $driver                          =                          new                          Selenium::Remote::                          Commuter                          ('                          remote_server_addr                          '                          =>                          $host                          ,                          '                          port                          '                          =>                          '                          80                          ',                          '                          extra_capabilities                          '                          =>                          $extraCaps                          );                          my                          $remote_fname                          =                          $commuter                          ->                          upload_file                          ("                          //local//file//path                          ");                          $driver                          ->                          become                          ('                          http://www.fileconvoy.com                          ');                          $commuter                          ->                          find_element                          ('                          upfile_0                          ','                          id                          ')                          ->                          send_keys                          (                          $remote_fname                          );                          $driver                          ->                          find_element                          ('                          readTermsOfUse                          ',                          '                          id                          ')                          ->                          click                          ();                          $driver                          ->                          find_element                          ('                          upload_button                          ',                          '                          name                          ')                          ->                          click                          ();                          sleep                          xl                          ;                          $commuter                          ->                          quit                          ();                                              

Annotation: Other browsers include Chrome, Firefox, Edge and Safari browsers.

You can send a file to remote browsers—directly from your workstation—in Automate, through the LocalFileDetector method.

                                                  import                          org.openqa.selenium.Past                          ;                          import                          org.openqa.selenium.JavascriptExecutor                          ;                          import                          org.openqa.selenium.remote.DesiredCapabilities                          ;                          import                          org.openqa.selenium.remote.LocalFileDetector                          ;                          import                          org.openqa.selenium.remote.RemoteWebDriver                          ;                          import                          org.openqa.selenium.back up.ui.ExpectedConditions                          ;                          import                          org.openqa.selenium.support.ui.WebDriverWait                          ;                          import                          java.cyberspace.URL                          ;                          public                          class                          JavaSample                          {                          public                          static                          concluding                          String                          AUTOMATE_USERNAME                          =                          "YOUR_USERNAME"                          ;                          public                          static                          final                          Cord                          AUTOMATE_KEY                          =                          "YOUR_ACCESS_KEY"                          ;                          public                          static                          final                          String                          URL                          =                          "https://"                          +                          AUTOMATE_USERNAME                          +                          ":"                          +                          AUTOMATE_KEY                          +                          "@hub-cloud.browserstack.com/wd/hub"                          ;                          public                          static                          void                          main                          (                          String                          []                          args                          )                          throws                          Exception                          {                          DesiredCapabilities                          caps                          =                          new                          DesiredCapabilities                          ();                          caps                          .                          setCapability                          (                          "browser"                          ,                          "chrome"                          );                          caps                          .                          setCapability                          (                          "os"                          ,                          "windows"                          );                          caps                          .                          setCapability                          (                          "browser_version"                          ,                          "latest"                          );                          caps                          .                          setCapability                          (                          "os_version"                          ,                          "10"                          );                          caps                          .                          setCapability                          (                          "name"                          ,                          "Bstack-[Coffee] Sample Test"                          );                          WebDriver                          driver                          =                          new                          RemoteWebDriver                          (                          new                          URL                          (                          URL                          ),                          caps                          );                          driver                          .                          setFileDetector                          (                          new                          LocalFileDetector                          ());                          driver                          .                          go                          (                          "http://www.fileconvoy.com/"                          );                          driver                          .                          findElement                          (                          By                          .                          id                          (                          "upfile_0"                          )).                          sendKeys                          (                          "//local//file//path"                          );                          driver                          .                          findElement                          (                          By                          .                          id                          (                          "readTermsOfUse"                          )).                          click                          ();                          commuter                          .                          findElement                          (                          By                          .                          proper name                          (                          "upload_button"                          )).                          submit                          ();                          JavascriptExecutor                          jse                          =                          (                          JavascriptExecutor                          )                          commuter                          ;                          try                          {                          WebDriverWait                          wait                          =                          new                          WebDriverWait                          (                          driver                          ,                          v                          );                          expect                          .                          until                          (                          ExpectedConditions                          .                          presenceOfElementLocated                          (                          By                          .                          id                          (                          "TopMessage"                          )));                          if                          (                          driver                          .                          findElementById                          (                          "TopMessage"                          ).                          getText                          ().                          contains                          (                          "successfully uploaded"                          ))                          {                          jse                          .                          executeScript                          (                          "browserstack_executor: {\"action\": \"setSessionStatus\", \"arguments\": {\"status\": \"passed\", \"reason\": \"File uploaded successfully\"}}"                          );                          }                          else                          {                          jse                          .                          executeScript                          (                          "browserstack_executor: {\"action\": \"setSessionStatus\", \"arguments\": {\"status\": \"failed\", \"reason\": \"File upload failed\"}}"                          );                          }                          }                          catch                          (                          Exception                          eastward                          )                          {                          jse                          .                          executeScript                          (                          "browserstack_executor: {\"action\": \"setSessionStatus\", \"arguments\": {\"status\": \"failed\", \"reason\": \"File could not be uploaded in 5 seconds\"}}"                          );                          }                          driver                          .                          quit                          ();                          }                          }                                              
                                                  const                          webdriver                          =                          crave                          (                          '                          selenium-webdriver                          '                          );                          const                          fs                          =                          require                          (                          '                          fs                          '                          );                          const                          remote                          =                          require                          (                          '                          selenium-webdriver/remote                          '                          );                          // Input capabilities                          const                          capabilities                          =                          {                          '                          browserName                          '                          :                          '                          safari                          '                          ,                          '                          browser_version                          '                          :                          '                          latest                          '                          ,                          '                          os                          '                          :                          '                          Bone X                          '                          ,                          '                          os_version                          '                          :                          '                          Big Sur                          '                          ,                          '                          proper noun                          '                          :                          '                          Safari exam file upload                          '                          ,                          // test proper name                          '                          build                          '                          :                          '                          File upload testing                          '                          // Build name                          }                          async                          function                          runTestWithCaps                          ()                          {                          allow                          commuter                          =                          new                          webdriver                          .                          Builder                          ()                          .                          usingServer                          (                          '                          http://YOUR_USERNAME:YOUR_ACCESS_KEY@hub-cloud.browserstack.com/wd/hub                          '                          )                          .                          withCapabilities                          (                          capabilities                          )                          .                          build                          ();                          //This will observe your local file                          expect                          driver                          .                          setFileDetector                          (                          new                          remote                          .                          FileDetector                          );                          await                          driver                          .                          go                          (                          '                          http://www.fileconvoy.com/                          '                          );                          await                          driver                          .                          findElement                          (                          webdriver                          .                          Past                          .                          id                          (                          '                          upfile_0                          '                          )).                          sendKeys                          (                          '                          //path//to//your//local//file                          '                          );                          // Path to teh file in your organization needs to be given here                          await                          driver                          .                          findElement                          (                          webdriver                          .                          By                          .                          id                          (                          '                          readTermsOfUse                          '                          )).                          click                          ();                          wait                          driver                          .                          findElement                          (                          webdriver                          .                          Past                          .                          id                          (                          '                          upload_button                          '                          )).                          click                          ();                          wait                          driver                          .                          wait                          (                          webdriver                          .                          until                          .                          elementLocated                          (                          webdriver                          .                          By                          .                          id                          (                          '                          TopMessage                          '                          )),                          5000                          );                          if                          ((                          expect                          driver                          .                          findElement                          (                          webdriver                          .                          By                          .                          id                          (                          '                          TopMessage                          '                          )).                          getText                          ()).                          includes                          (                          '                          successfully uploaded                          '                          ))                          {                          look                          driver                          .                          executeScript                          (                          '                          browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"passed","reason": "File upload successful"}}                          '                          );                          }                          else                          {                          await                          driver                          .                          executeScript                          (                          '                          browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed","reason": "File upload failed"}}                          '                          );                          }                          expect                          commuter                          .                          quit                          ();                          }                          runTestWithCaps                          ();                                              
                                                  using                          System                          ;                          using                          System.Text                          ;                          using                          OpenQA.Selenium                          ;                          using                          OpenQA.Selenium.Remote                          ;                          namespace                          SeleniumTest                          {                          class                          Programme                          {                          static                          void                          Main                          (                          string                          []                          args                          )                          {                          Encoding                          .                          RegisterProvider                          (                          CodePagesEncodingProvider                          .                          Instance                          );                          IWebDriver                          driver                          ;                          OpenQA                          .                          Selenium                          .                          Chrome                          .                          ChromeOptions                          capability                          =                          new                          OpenQA                          .                          Selenium                          .                          Chrome                          .                          ChromeOptions                          ();                          capability                          .                          AddAdditionalCapability                          (                          "browser"                          ,                          "Chrome"                          ,                          true                          );                          capability                          .                          AddAdditionalCapability                          (                          "browser_version"                          ,                          "75.0"                          ,                          true                          );                          adequacy                          .                          AddAdditionalCapability                          (                          "os"                          ,                          "Windows"                          ,                          true                          );                          capability                          .                          AddAdditionalCapability                          (                          "os_version"                          ,                          "10"                          ,                          true                          );                          adequacy                          .                          AddAdditionalCapability                          (                          "browserstack.user"                          ,                          "YOUR_USERNAME"                          ,                          truthful                          );                          capability                          .                          AddAdditionalCapability                          (                          "browserstack.key"                          ,                          "YOUR_ACCESS_KEY"                          ,                          true                          );                          capability                          .                          AddAdditionalCapability                          (                          "name"                          ,                          "Bstack-[C_sharp] Sample Exam"                          ,                          true                          );                          driver                          =                          new                          RemoteWebDriver                          (                          new                          Uri                          (                          "http://hub-deject.browserstack.com/wd/hub/"                          ),                          capability                          );                          driver                          .                          Navigate                          ().                          GoToUrl                          (                          "http://www.fileconvoy.com"                          );                          IWebElement                          uploadFile                          =                          commuter                          .                          FindElement                          (                          Past                          .                          Id                          (                          "upfile_0"                          ));                          Console                          .                          WriteLine                          (                          driver                          .                          Title                          );                          Cord                          path                          =                          "path//to//your//local//file"                          ;                          //File path in your local machine                          LocalFileDetector                          detector                          =                          new                          LocalFileDetector                          ();                          var                          allowsDetection                          =                          driver                          equally                          IAllowsFileDetection                          ;                          if                          (                          allowsDetection                          !=                          null                          )                          {                          allowsDetection                          .                          FileDetector                          =                          detector                          ;                          }                          uploadFile                          .                          SendKeys                          (                          path                          );                          commuter                          .                          FindElement                          (                          Past                          .                          Id                          (                          "readTermsOfUse"                          )).                          Click                          ();                          driver                          .                          FindElement                          (                          Past                          .                          Id                          (                          "upload_button"                          )).                          Click                          ();                          driver                          .                          Manage                          ().                          Timeouts                          ().                          ImplicitWait                          =                          TimeSpan                          .                          FromSeconds                          (                          5                          );                          Cord                          result                          =                          driver                          .                          FindElement                          (                          By                          .                          CssSelector                          (                          "#TopMessage"                          )).                          Text                          ;                          if                          (                          result                          .                          Contains                          (                          "successfully uploaded"                          ))                          {                          ((                          IJavaScriptExecutor                          )                          driver                          ).                          ExecuteScript                          (                          "browserstack_executor: {\"action\": \"setSessionStatus\", \"arguments\": {\"status\":\"passed\", \"reason\": \"File uploaded successfully!\"}}"                          );                          }                          else                          {                          ((                          IJavaScriptExecutor                          )                          commuter                          ).                          ExecuteScript                          (                          "browserstack_executor: {\"action\": \"setSessionStatus\", \"arguments\": {\"status\":\"failed\", \"reason\": \"File upload failed!\"}}"                          );                          }                          driver                          .                          Quit                          ();                          }                          }                          }                                              
                                                  <?php                          require_once                          (                          'vendor/autoload.php'                          );                          use                          Facebook\WebDriver\Remote\RemoteWebDriver                          ;                          use                          Facebook\WebDriver\WebDriverBy                          ;                          use                          Facebook\WebDriver\Remote\LocalFileDetector                          ;                          $caps                          =                          assortment                          (                          "browser"                          =>                          "Chrome"                          ,                          "browser_version"                          =>                          "75.0"                          ,                          "bone"                          =>                          "Windows"                          ,                          "os_version"                          =>                          "10"                          ,                          "name"                          =>                          "Bstack-[Php] Sample Test"                          );                          $web_driver                          =                          RemoteWebDriver                          ::                          create                          (                          "https://YOUR_USERNAME:YOUR_ACCESS_KEY@hub-deject.browserstack.com/wd/hub"                          ,                          $caps                          );                          $web_driver                          ->                          get                          (                          "http://www.fileconvoy.com"                          );                          $file_input                          =                          $web_driver                          ->                          findElement                          (                          WebDriverBy                          ::                          id                          (                          "upfile_0"                          ));                          $file_input                          ->                          setFileDetector                          (                          new                          LocalFileDetector                          ());                          $file_input                          ->                          sendKeys                          (                          "//local//file//path"                          );                          $web_driver                          ->                          findElement                          (                          WebDriverBy                          ::                          id                          (                          "readTermsOfUse"                          ))                          ->                          click                          ();                          $web_driver                          ->                          findElement                          (                          WebDriverBy                          ::                          proper noun                          (                          "upload_button"                          ))                          ->                          submit                          ();                          sleep                          (                          5                          );                          $web_driver                          ->                          quit                          ();                          ?>                                              
                                                  from                          selenium                          import                          webdriver                          from                          selenium.webdriver.common.keys                          import                          Keys                          from                          selenium.webdriver.common.desired_capabilities                          import                          DesiredCapabilities                          from                          selenium.common.exceptions                          import                          TimeoutException                          from                          selenium.webdriver.support.ui                          import                          WebDriverWait                          desired_cap                          =                          {                          'browser'                          :                          'Chrome'                          ,                          'browser_version'                          :                          '75.0'                          ,                          'os'                          :                          'Windows'                          ,                          'os_version'                          :                          '10'                          ,                          'proper noun'                          :                          'Bstack-[Python] Sample Test'                          }                          commuter                          =                          webdriver                          .                          Remote                          (                          command_executor                          =                          'http://YOUR_USERNAME:YOUR_ACCESS_KEY@hub.browserstack.com/wd/hub'                          ,                          desired_capabilities                          =                          desired_cap                          )                          driver                          .                          get                          (                          'http://world wide web.fileconvoy.com'                          )                          driver                          .                          find_element_by_id                          (                          'upfile_0'                          ).                          send_keys                          (                          '//local//file//path'                          )                          commuter                          .                          find_element_by_id                          (                          'readTermsOfUse'                          ).                          click                          ()                          driver                          .                          find_element_by_name                          (                          'upload_button'                          ).                          submit                          ()                          effort                          :                          WebDriverWait                          (                          driver                          ,                          5                          ).                          until                          (                          lambda                          x                          :                          x                          .                          find_element_by_id                          (                          'TopMessage'                          ))                          if                          (                          driver                          .                          find_element_by_id                          (                          'TopMessage'                          ).                          text                          ==                          "Your file(s) have been successfully uploaded."                          ):                          # Setting the status of test equally 'passed' or 'failed' based on the condition; if title of the web page starts with 'BrowserStack'                                                    driver                          .                          execute_script                          (                          'browserstack_executor: {"action": "setSessionStatus", "arguments": {"condition":"passed", "reason": "File uploaded!"}}'                          )                          else                          :                          driver                          .                          execute_script                          (                          'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed", "reason": "File upload failed"}}'                          )                          except                          TimeoutException                          :                          driver                          .                          execute_script                          (                          'browserstack_executor: {"activity": "setSessionStatus", "arguments": {"status":"failed", "reason": "File failed to upload in five seconds"}}'                          )                          commuter                          .                          quit                          ()                                              
                                                  require                          'rubygems'                          require                          'selenium-webdriver'                          # Input capabilities                          caps                          =                          Selenium                          ::                          WebDriver                          ::                          Remote                          ::                          Capabilities                          .                          new                          caps                          [                          'browser'                          ]                          =                          'Chrome'                          caps                          [                          'browser_version'                          ]                          =                          '75.0'                          caps                          [                          'bone'                          ]                          =                          'Windows'                          caps                          [                          'os_version'                          ]                          =                          '10'                          caps                          [                          'name'                          ]                          =                          'Bstack-[Ruby] Sample Test'                          commuter                          =                          Selenium                          ::                          WebDriver                          .                          for                          (                          :remote                          ,                          :url                          =>                          "http://YOUR_USERNAME:YOUR_ACCESS_KEY@hub-deject.browserstack.com/wd/hub"                          ,                          :desired_capabilities                          =>                          caps                          )                          driver                          .                          file_detector                          =                          lambda                          do                          |                          args                          |                          str                          =                          args                          .                          first                          .                          to_s                          str                          if                          File                          .                          exist?                          (                          str                          )                          terminate                          driver                          .                          navigate                          .                          to                          "http://world wide web.fileconvoy.com"                          driver                          .                          find_element                          (                          :id                          ,                          "upfile_0"                          ).                          send_keys                          (                          "//local//file//path"                          );                          driver                          .                          find_element                          (                          :id                          ,                          "readTermsOfUse"                          ).                          click                          ;                          commuter                          .                          find_element                          (                          :name                          ,                          "upload_button"                          ).                          submit                          ;                          slumber                          (                          5                          )                          driver                          .                          quit                                              
                                                  utilise                          Selenium::Remote::                          Commuter                          ;                          #Input capabilities                          my                          $extraCaps                          =                          {                          "                          browser                          "                          =>                          "                          Chrome                          ",                          "                          browser_version                          "                          =>                          "                          75.0                          ",                          "                          os                          "                          =>                          "                          Windows                          ",                          "                          os_version                          "                          =>                          "                          10                          ",                          "                          name                          "                          =>                          "                          Bstack-[Perl] Sample Test                          "                          };                          my                          $login                          =                          "                          YOUR_USERNAME                          ";                          my                          $key                          =                          "                          YOUR_ACCESS_KEY                          ";                          my                          $host                          =                          "                          $login                          :                          $key                          \@                          hub-cloud.browserstack.com                          ";                          my                          $driver                          =                          new                          Selenium::Remote::                          Driver                          ('                          remote_server_addr                          '                          =>                          $host                          ,                          '                          port                          '                          =>                          '                          80                          ',                          '                          extra_capabilities                          '                          =>                          $extraCaps                          );                          my                          $remote_fname                          =                          $driver                          ->                          upload_file                          ("                          //local//file//path                          ");                          $commuter                          ->                          get                          ('                          http://world wide web.fileconvoy.com                          ');                          $driver                          ->                          find_element                          ('                          upfile_0                          ','                          id                          ')                          ->                          send_keys                          (                          $remote_fname                          );                          $driver                          ->                          find_element                          ('                          readTermsOfUse                          ',                          '                          id                          ')                          ->                          click                          ();                          $driver                          ->                          find_element                          ('                          upload_button                          ',                          '                          name                          ')                          ->                          click                          ();                          sleep                          40                          ;                          $driver                          ->                          quit                          ();                                              
                                                  package                          com.browserstack                          ;                          import                          io.appium.java_client.AppiumDriver                          ;                          import                          io.appium.java_client.android.AndroidDriver                          ;                          import                          io.appium.java_client.android.AndroidElement                          ;                          import                          org.openqa.selenium.By                          ;                          import                          org.openqa.selenium.WebDriver                          ;                          import                          org.openqa.selenium.WebElement                          ;                          import                          org.openqa.selenium.remote.DesiredCapabilities                          ;                          import                          org.openqa.selenium.remote.RemoteWebDriver                          ;                          import                          java.io.File                          ;                          import                          java.net.URL                          ;                          public                          class                          UploadFile                          {                          public                          static                          final                          String                          USERNAME                          =                          "YOUR_USERNAME"                          ;                          public                          static                          final                          Cord                          AUTOMATE_KEY                          =                          "YOUR_ACCESS_KEY"                          ;                          public                          static                          final                          String                          URL                          =                          "http://"                          +                          USERNAME                          +                          ":"                          +                          AUTOMATE_KEY                          +                          "@hub-deject.browserstack.com/wd/hub"                          ;                          public                          static                          void                          principal                          (                          String                          []                          args                          )                          throws                          Exception                          {                          DesiredCapabilities                          caps                          =                          new                          DesiredCapabilities                          ();                          caps                          .                          setCapability                          (                          "device"                          ,                          "Samsung Galaxy S9"                          );                          caps                          .                          setCapability                          (                          "os_version"                          ,                          "8.0"                          );                          caps                          .                          setCapability                          (                          "name"                          ,                          "upload"                          );                          caps                          .                          setCapability                          (                          "build"                          ,                          "Upload File"                          );                          /**uploading files**/                          AndroidDriver                          <                          WebElement                          >                          commuter                          =                          new                          AndroidDriver                          <                          WebElement                          >(                          new                          URL                          (                          URL                          ),                          caps                          );                          driver                          .                          get                          (                          "https://the-internet.herokuapp.com/upload"                          );                          commuter                          .                          pushFile                          (                          "/data/local/tmp/<file_name>"                          ,                          new                          File                          (                          "<local_file_path>"                          ));                          driver                          .                          findElement                          (                          By                          .                          id                          (                          "file-upload"                          )).                          sendKeys                          (                          "/information/local/tmp/<file_name>"                          );                          //Thread.sleep(2000);                          driver                          .                          findElement                          (                          Past                          .                          id                          (                          "file-submit"                          )).                          submit                          ();                          driver                          .                          quit                          ();                          }                          }                                              
                                                  var                          wd                          =                          crave                          (                          '                          wd                          '                          );                          var                          fs                          =                          crave                          (                          '                          fs                          '                          )                          var                          affirm                          =                          require                          (                          '                          affirm                          '                          );                          var                          asserters                          =                          wd                          .                          asserters                          ;                          desiredCaps                          =                          {                          '                          browserstack.user                          '                          :                          '                          YOUR_USERNAME                          '                          ,                          '                          browserstack.central                          '                          :                          '                          YOUR_ACCESS_KEY                          '                          ,                          '                          build                          '                          :                          '                          Node Push File                          '                          ,                          '                          name                          '                          :                          '                          upload file                          '                          ,                          '                          device                          '                          :                          '                          Google Pixel 3                          '                          ,                          '                          browserstack.debug                          '                          :                          truthful                          };                          driver                          =                          wd                          .                          promiseRemote                          (                          "                          http://hub-cloud.browserstack.com/wd/hub                          "                          );                          commuter                          .                          init                          (                          desiredCaps                          )                          .                          then                          (                          role                          ()                          {                          return                          driver                          .                          become                          (                          '                          https://the-internet.herokuapp.com/upload                          '                          );                          })                          .                          so                          (                          function                          ()                          {                          let                          data                          =                          fs                          .                          readFileSync                          (                          '                          <local_file_path>                          '                          )                          let                          convertedData                          =                          new                          Buffer                          .                          from                          (                          information                          ,                          '                          base64                          '                          )                          return                          driver                          .                          pushFileToDevice                          (                          '                          /information/local/tmp/<file_name>                          '                          ,                          convertedData                          );                          })                          .                          and then                          (                          function                          ()                          {                          render                          driver                          .                          elementById                          (                          "                          file-upload                          "                          );                          })                          .                          so                          (                          function                          (                          uploadFile                          )                          {                          return                          uploadFile                          .                          sendKeys                          (                          '                          /information/local/tmp/<file_name>                          '                          );                          })                          .                          then                          (                          function                          ()                          {                          return                          driver                          .                          elementById                          (                          "                          file-submit                          "                          );                          })                          .                          and then                          (                          function                          (                          clickSubmit                          )                          {                          return                          clickSubmit                          .                          click                          ();                          })                          .                          fin                          (                          function                          ()                          {                          return                          driver                          .                          quit                          ();                          })                          .                          done                          ();                                              
                                                  using                          Organization                          ;                          using                          OpenQA.Selenium.Appium                          ;                          using                          OpenQA.Selenium.Appium.Android                          ;                          using                          OpenQA.Selenium.Remote                          ;                          using                          OpenQA.Selenium.Support.UI                          ;                          using                          Arrangement.Collections.Generic                          ;                          using                          OpenQA.Selenium                          ;                          using                          System.IO                          ;                          using                          NUnit.Framework                          ;                          namespace                          BrowserStack                          {                          public                          class                          UploadFile                          {                          [                          Test                          ]                          public                          void                          Test                          ()                          {                          AppiumOptions                          caps                          =                          new                          AppiumOptions                          ();                          // Set your BrowserStack access credentials                          caps                          .                          AddAdditionalCapability                          (                          "browserstack.user"                          ,                          "YOUR_USERNAME"                          );                          caps                          .                          AddAdditionalCapability                          (                          "browserstack.key"                          ,                          "YOUR_ACCESS_KEY"                          );                          // Specify device and os_version                          caps                          .                          AddAdditionalCapability                          (                          "device"                          ,                          "Samsung Galaxy S10"                          );                          caps                          .                          AddAdditionalCapability                          (                          "os_version"                          ,                          "9.0"                          );                          caps                          .                          AddAdditionalCapability                          (                          "build"                          ,                          "Upload File - CSharp"                          );                          caps                          .                          AddAdditionalCapability                          (                          "proper name"                          ,                          "upload_file"                          );                          AndroidDriver                          <                          IWebElement                          >                          driver                          =                          new                          AndroidDriver                          <                          IWebElement                          >(                          new                          Uri                          (                          "http://hub-cloud.browserstack.com/wd/hub"                          ),                          caps                          );                          driver                          .                          PushFile                          (                          "/data/local/tmp/<file_name>"                          ,                          new                          FileInfo                          (                          "<local_file_path>"                          ));                          driver                          .                          Navigate                          ().                          GoToUrl                          (                          "https://the-internet.herokuapp.com/upload"                          );                          commuter                          .                          FindElement                          (                          By                          .                          Id                          (                          "file-upload"                          )).                          SendKeys                          (                          "/information/local/tmp/<file_name>"                          );                          driver                          .                          FindElement                          (                          By                          .                          Id                          (                          "file-submit"                          )).                          Submit                          ();                          driver                          .                          Quit                          ();                          }                          }                          }                                              
                                                  <?php                          require                          'android_upload.php'                          ;                          class                          AppAutomateTest                          extends                          BrowserStackTest                          {                          public                          function                          sendkeys                          (                          $elem                          ,                          $keys                          )                          {                          $data                          =                          array                          (                          'value'                          =>                          str_split                          (                          $keys                          ),                          'text'                          =>                          $keys                          );                          $url                          =                          $this                          ->                          getSessionUrl                          ()                          ->                          descend                          (                          'chemical element'                          )                          ->                          descend                          (                          $elem                          ->                          getId                          ())                          ->                          descend                          (                          'value'                          );                          $this                          ->                          getDriver                          ()                          ->                          curl                          (                          'POST'                          ,                          $url                          ,                          $data                          );                          }                          public                          function                          testNativeApplication                          ()                          {                          $this                          ->                          pushFile                          (                          '/data/local/tmp/<file_name>'                          ,                          '<local_file_path>'                          );                          $this                          ->                          url                          (                          "https://the-internet.herokuapp.com/upload"                          );                          $elem                          =                          $this                          ->                          byId                          (                          'file-upload'                          );                          $this                          ->                          sendkeys                          (                          $elem                          ,                          "/data/local/tmp/<file_name>"                          );                          $this                          ->                          chemical element                          (                          $this                          ->                          using                          (                          'id'                          )                          ->                          value                          (                          'file-submit'                          ))                          ->                          submit                          ();                          }                          }                          ?>                                              
                                                  from                          appium                          import                          webdriver                          from                          appium.webdriver.mutual.mobileby                          import                          MobileBy                          from                          selenium.webdriver.support.ui                          import                          WebDriverWait                          from                          selenium.webdriver.support                          import                          expected_conditions                          as                          EC                          import                          fourth dimension                          userName                          =                          "YOUR_USERNAME"                          accessKey                          =                          "YOUR_ACCESS_KEY"                          desired_caps                          =                          {                          "os_version"                          :                          "8.0"                          ,                          "device"                          :                          "Samsung Galaxy S9"                          ,                          "name"                          :                          "test"                          ,                          "build"                          :                          "Python File Upload"                          }                          driver                          =                          webdriver                          .                          Remote                          (                          "https://"                          +                          userName                          +                          ":"                          +                          accessKey                          +                          "@hub-deject.browserstack.com/wd/hub"                          ,                          desired_caps                          )                          driver                          .                          push_file                          (                          "/data/local/tmp/<file_name>"                          ,                          source_path                          =                          "<local_file_path>"                          )                          commuter                          .                          become                          (                          "https://the-net.herokuapp.com/upload"                          )                          driver                          .                          find_element_by_id                          (                          "file-upload"                          ).                          send_keys                          (                          "/information/local/tmp/<file_name>"                          )                          commuter                          .                          find_element_by_id                          (                          "file-submit"                          ).                          submit                          ();                          driver                          .                          quit                          ()                                              
                                                  crave                          'rubygems'                          require                          'appium_lib'                          caps                          =                          {}                          caps                          [                          'device'                          ]                          =                          'Google Pixel 3'                          caps                          [                          'platformName'                          ]                          =                          'Android'                          caps                          [                          'realMobile'                          ]                          =                          'true'                          caps                          [                          'proper name'                          ]                          =                          'BStack-[Ruby] Sample Test'                          # examination name                          caps                          [                          'build'                          ]                          =                          'BStack Build Number 1'                          # CI/CD job or build name                          appium_driver                          =                          Appium                          ::                          Driver                          .                          new                          ({                          'caps'                          =>                          caps                          ,                          'appium_lib'                          =>                          {                          :server_url                          =>                          "https://YOUR_USERNAME:YOUR_ACCESS_KEY@hub-cloud.browserstack.com/wd/hub"                          }},                          true                          )                          driver                          =                          appium_driver                          .                          start_driver                          driver                          .                          push_file                          (                          '/information/local/tmp/<file_name>'                          ,                          (                          File                          .                          read                          '<local_file_path>'                          ))                          commuter                          .                          get                          (                          "https://the-internet.herokuapp.com/upload"                          )                          driver                          .                          find_element                          (                          :id                          ,                          "file-upload"                          ).                          send_keys                          (                          "/information/local/tmp/<file_name>"                          )                          driver                          .                          find_element                          (                          :id                          ,                          "file-submit"                          ).                          submit                          ();                          commuter                          .                          quit                                              

Note: Ensure to upload the file from your machine to BrowserStack remote machine's /data/local/tmp/<file_name> directory only, and and then upload file from BrowserStack remote machine'due south /information/local/tmp/<file_name> directory to the web application.

In the to a higher place code snippet, the pushFile() method is used to upload file from your machine to BrowserStack remote machine, the method accepts remote_machine_file_path and local_machine_file_path as arguments respectively. The code then navigates to the URL where file has to be uploaded and through the send_keys() method, upload the file which is present in remote_machine_file_path.

Uploading file in iOS device is possible by downloading that file outset and so uploading information technology in the same automate session. For more details, refer the department for uploading the files which are downloaded in the same Automate session.

Note: You can upload whatsoever file format from your local system by just giving the path to that file.

Uploading pre-loaded files

By default, desktop and mobile platforms accept some sample media files. This is also true for remote instances spun up on BrowserStack. Post-obit are the file paths you can apply:

Windows 10, 8.1, viii, vii

                    In the below remote file paths at that place are two                      \,                      the showtime                      \                      is used equally an escape character                      *Video*                      C:\\Users\\hi\\Documents\\video\\saper.avi C:\\Users\\hello\\Documents\\video\\sample_mpeg4.mp4 C:\\Users\\hello\\Documents\\video\\sample_iTunes.mov C:\\Users\\hello\\Documents\\video\\sample_mpeg2.m2v                      *Images*                      C:\\Users\\hello\\Documents\\images\\wallpaper1.jpg C:\\Users\\hello\\Documents\\images\\icon.png C:\\Users\\hello\\Documents\\images\\cartoon-animation.gif                      *Documents*                      C:\\Users\\hullo\\Documents\\documents\\xls-sample1.xls C:\\Users\\hi\\Documents\\documents\\text-sample1.txt C:\\Users\\hello\\Documents\\documents\\pdf-sample1.pdf C:\\Users\\hello\\Documents\\documents\\dr.-sample1.docx                      *Audio*                      C:\\Users\\hello\\Documents\\audio\\first_noel.mp3 C:\\Users\\hello\\Documents\\sound\\BachCPE_SonataAmin_1.wma C:\\Users\\hello\\Documents\\sound\\250Hz_44100Hz_16bit_05sec.wav                      *Zip files*                      C:\\Users\\hi\\Documents\\4KBzipFile.zip C:\\Users\\hullo\\Documents\\1MBzipFile.null                                      

Windows XP

                    C:\\Documents\                      and\                      Settings\\hello\\url.txt                                      

You lot can choose any of the files from the above list for Windows operating systems, in the code snippet given below.

                                          *Video*                      /Users/test1/Documents/video/saper.avi /Users/test1/Documents/video/sample_mpeg4.mp4 /Users/test1/Documents/video/sample_iTunes.mov /Users/test1/Documents/video/sample_mpeg2.m2v                      *Images*                      /Users/test1/Documents/images/wallpaper1.jpg /Users/test1/Documents/images/icon.png /Users/test1/Documents/images/drawing-animation.gif                      *Documents*                      /Users/test1/Documents/documents/xls-sample1.xls /Users/test1/Documents/documents/text-sample1.txt /Users/test1/Documents/documents/pdf-sample1.pdf /Users/test1/Documents/documents/doc-sample1.docx                      *Audio*                      /Users/test1/Documents/audio/first_noel.mp3 /Users/test1/Documents/sound/BachCPE_SonataAmin_1.wma /Users/test1/Documents/audio/250Hz_44100Hz_16bit_05sec.wav                      *Cipher files*                      /Users/test1/Documents/4KBzipFile.nil /Users/test1/Documents/1MBzipFile.zero                                      

You can choose whatever of the files from the above listing for macOS operating systems, in the code snippet given beneath.

Uploading preloaded files in Android is not possible as of at present, however yous tin upload the file from your machine to the web application using the pushFile() method as shown in Uploading files from your motorcar section

Uploading preloaded files in iOS can be implemented using the following iOS snippets.

Yous can use those files to exam your web app'due south file upload functionality using Selenium's LocalFileDetector method and the file path.

                                                  import                          org.openqa.selenium.By                          ;                          import                          org.openqa.selenium.JavascriptExecutor                          ;                          import                          org.openqa.selenium.remote.DesiredCapabilities                          ;                          import                          org.openqa.selenium.remote.LocalFileDetector                          ;                          import                          org.openqa.selenium.remote.RemoteWebDriver                          ;                          import                          org.openqa.selenium.back up.ui.ExpectedConditions                          ;                          import                          org.openqa.selenium.support.ui.WebDriverWait                          ;                          public                          class                          JavaSample                          {                          public                          static                          concluding                          String                          AUTOMATE_USERNAME                          =                          "YOUR_USERNAME"                          ;                          public                          static                          final                          String                          AUTOMATE_KEY                          =                          "YOUR_ACCESS_KEY"                          ;                          public                          static                          last                          String                          URL                          =                          "https://"                          +                          AUTOMATE_USERNAME                          +                          ":"                          +                          AUTOMATE_KEY                          +                          "@hub-cloud.browserstack.com/wd/hub"                          ;                          public                          static                          void                          principal                          (                          Cord                          []                          args                          )                          throws                          Exception                          {                          DesiredCapabilities                          caps                          =                          new                          DesiredCapabilities                          ();                          caps                          .                          setCapability                          (                          "browser"                          ,                          "internet explorer"                          );                          caps                          .                          setCapability                          (                          "bone"                          ,                          "windows"                          );                          caps                          .                          setCapability                          (                          "browser_version"                          ,                          "11.0"                          );                          caps                          .                          setCapability                          (                          "os_version"                          ,                          "ten"                          );                          caps                          .                          setCapability                          (                          "browserstack.sendKeys"                          ,                          "true"                          );                          caps                          .                          setCapability                          (                          "browserstack.debug"                          ,                          "true"                          );                          caps                          .                          setCapability                          (                          "name"                          ,                          "Bstack-[Java] Sample Test"                          );                          RemoteWebDriver                          driver                          =                          new                          RemoteWebDriver                          (                          new                          URL                          (                          URL                          ),                          caps                          );                          driver                          .                          setFileDetector                          (                          new                          LocalFileDetector                          ());                          driver                          .                          become                          (                          "http://www.fileconvoy.com/"                          );                          commuter                          .                          findElement                          (                          By                          .                          id                          (                          "upfile_0"                          )).                          sendKeys                          (                          "C:\\Users\\hello\\Documents\\audio\\first_noel.mp3"                          );                          //File path in remote car                          driver                          .                          findElement                          (                          Past                          .                          id                          (                          "readTermsOfUse"                          )).                          click                          ();                          driver                          .                          findElement                          (                          By                          .                          proper name                          (                          "upload_button"                          )).                          submit                          ();                          JavascriptExecutor                          jse                          =                          (                          JavascriptExecutor                          )                          commuter                          ;                          try                          {                          WebDriverWait                          await                          =                          new                          WebDriverWait                          (                          commuter                          ,                          5                          );                          wait                          .                          until                          (                          ExpectedConditions                          .                          presenceOfElementLocated                          (                          By                          .                          id                          (                          "TopMessage"                          )));                          if                          (                          driver                          .                          findElementById                          (                          "TopMessage"                          ).                          getText                          ().                          contains                          (                          "successfully uploaded"                          ))                          {                          jse                          .                          executeScript                          (                          "browserstack_executor: {\"action\": \"setSessionStatus\", \"arguments\": {\"condition\": \"passed\", \"reason\": \"File uploaded successfully\"}}"                          );                          }                          else                          {                          jse                          .                          executeScript                          (                          "browserstack_executor: {\"action\": \"setSessionStatus\", \"arguments\": {\"status\": \"failed\", \"reason\": \"File upload failed\"}}"                          );                          }                          }                          catch                          (                          Exception                          east                          )                          {                          jse                          .                          executeScript                          (                          "browserstack_executor: {\"action\": \"setSessionStatus\", \"arguments\": {\"status\": \"failed\", \"reason\": \"File could not be uploaded in v seconds\"}}"                          );                          }                          driver                          .                          quit                          ();                          }                          }                                              
                                                  const                          webdriver                          =                          require                          (                          "                          selenium-webdriver                          "                          );                          const                          remote                          =                          require                          (                          "                          selenium-webdriver/remote                          "                          );                          // Input capabilities                          const                          capabilities                          =                          {                          "                          browserName                          "                          :                          "                          Internet Explorer                          "                          ,                          "                          browser_version                          "                          :                          "                          11.0                          "                          ,                          "                          os                          "                          :                          "                          Windows                          "                          ,                          "                          os_version                          "                          :                          "                          x                          "                          ,                          "                          proper noun                          "                          :                          "                          Bstack-[NodeJS] Upload Test                          "                          ,                          "                          browserstack.sendKeys                          "                          :                          "                          true                          "                          ,                          "                          browserstack.debug                          "                          :                          "                          truthful                          "                          ,                          "                          browserstack.user                          "                          :                          "                          YOUR_USERNAME                          "                          ,                          "                          browserstack.primal                          "                          :                          "                          YOUR_ACCESS_KEY                          "                          };                          const                          driver                          =                          new                          webdriver                          .                          Architect                          ()                          .                          usingServer                          (                          "                          https://hub-deject.browserstack.com/wd/hub                          "                          )                          .                          withCapabilities                          (                          capabilities                          )                          .                          build                          ();                          //This will detect your local file                          driver                          .                          setFileDetector                          (                          new                          remote                          .                          FileDetector                          ());                          (                          async                          ()                          =>                          {                          wait                          driver                          .                          get                          (                          "                          http://www.fileconvoy.com                          "                          );                          const                          filePathElement                          =                          await                          driver                          .                          findElement                          (                          webdriver                          .                          By                          .                          id                          (                          "                          upfile_0                          "                          ));                          await                          filePathElement                          .                          sendKeys                          (                          "                          C:                          \\                          Users                          \\                          hullo                          \\                          Documents                          \\                          audio                          \\                          first_noel.mp3                          "                          );                          await                          (                          expect                          driver                          .                          findElement                          (                          webdriver                          .                          By                          .                          id                          (                          "                          readTermsOfUse                          "                          ))).                          click                          ();                          expect                          (                          wait                          commuter                          .                          findElement                          (                          webdriver                          .                          By                          .                          proper name                          (                          "                          upload_button                          "                          ))).                          click                          ();                          endeavor                          {                          await                          driver                          .                          wait                          (                          webdriver                          .                          until                          .                          elementIsVisible                          ((                          wait                          driver                          .                          findElement                          (                          webdriver                          .                          By                          .                          id                          (                          '                          TopMessage                          '                          )))),                          5000                          );                          if                          ((                          await                          commuter                          .                          findElement                          (                          webdriver                          .                          By                          .                          id                          (                          '                          TopMessage                          '                          )).                          getText                          ()).                          includes                          (                          '                          successfully uploaded                          '                          ))                          {                          await                          driver                          .                          executeScript                          (                          '                          browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"passed","reason": "File upload successful"}}                          '                          );                          }                          else                          {                          wait                          commuter                          .                          executeScript                          (                          '                          browserstack_executor: {"activity": "setSessionStatus", "arguments": {"status":"failed","reason": "File upload failed"}}                          '                          );                          }                          }                          catch                          (                          e                          )                          {                          await                          driver                          .                          executeScript                          (                          '                          browserstack_executor: {"action": "setSessionStatus", "arguments": {"condition":"failed","reason": "File could not be uploaded in time"}}                          '                          );                          }                          await                          commuter                          .                          quit                          ();                          })();                                              
                                                  using                          System                          ;                          using                          OpenQA.Selenium                          ;                          using                          OpenQA.Selenium.Remote                          ;                          namespace                          SeleniumTest                          {                          class                          Plan                          {                          static                          void                          Main                          (                          string                          []                          args                          )                          {                          IWebDriver                          driver                          ;                          OpenQA                          .                          Selenium                          .                          IE                          .                          InternetExplorerOptions                          capability                          =                          new                          OpenQA                          .                          Selenium                          .                          IE                          .                          InternetExplorerOptions                          ();                          capability                          .                          AddAdditionalCapability                          (                          "browser"                          ,                          "IE"                          ,                          true                          );                          capability                          .                          AddAdditionalCapability                          (                          "browser_version"                          ,                          "11"                          ,                          truthful                          );                          adequacy                          .                          AddAdditionalCapability                          (                          "os"                          ,                          "Windows"                          ,                          true                          );                          capability                          .                          AddAdditionalCapability                          (                          "os_version"                          ,                          "10"                          ,                          true                          );                          capability                          .                          AddAdditionalCapability                          (                          "browserstack.sendKeys"                          ,                          "true"                          ,                          truthful                          );                          capability                          .                          AddAdditionalCapability                          (                          "browserstack.debug"                          ,                          "true"                          ,                          true                          );                          adequacy                          .                          AddAdditionalCapability                          (                          "browserstack.user"                          ,                          "YOUR_USERNAME"                          ,                          truthful                          );                          adequacy                          .                          AddAdditionalCapability                          (                          "browserstack.central"                          ,                          "YOUR_ACCESS_KEY"                          ,                          true                          );                          adequacy                          .                          AddAdditionalCapability                          (                          "proper noun"                          ,                          "Bstack-[C_sharp] Sample Test"                          ,                          truthful                          );                          driver                          =                          new                          RemoteWebDriver                          (                          new                          Uri                          (                          "http://hub-deject.browserstack.com/wd/hub/"                          ),                          capability                          );                          driver                          .                          Navigate                          ().                          GoToUrl                          (                          "http://www.fileconvoy.com"                          );                          IWebElement                          uploadFile                          =                          driver                          .                          FindElement                          (                          By                          .                          Id                          (                          "upfile_0"                          ));                          Console                          .                          WriteLine                          (                          driver                          .                          Championship                          );                          String                          path                          =                          "C:\\Users\\how-do-you-do\\Documents\\audio\\first_noel.mp3"                          ;                          //File path in remote machine                          LocalFileDetector                          detector                          =                          new                          LocalFileDetector                          ();                          var                          allowsDetection                          =                          driver                          as                          IAllowsFileDetection                          ;                          if                          (                          allowsDetection                          !=                          null                          )                          {                          allowsDetection                          .                          FileDetector                          =                          new                          LocalFileDetector                          ();                          }                          uploadFile                          .                          SendKeys                          (                          path                          );                          driver                          .                          FindElement                          (                          Past                          .                          Id                          (                          "readTermsOfUse"                          )).                          Click                          ();                          driver                          .                          FindElement                          (                          Past                          .                          Id                          (                          "upload_button"                          )).                          Click                          ();                          driver                          .                          Manage                          ().                          Timeouts                          ().                          ImplicitWait                          =                          TimeSpan                          .                          FromSeconds                          (                          5                          );                          if                          (                          driver                          .                          FindElement                          (                          By                          .                          CssSelector                          (                          "#TopMessage"                          )).                          Text                          .                          Contains                          (                          "successfully uploaded"                          ))                          {                          ((                          IJavaScriptExecutor                          )                          driver                          ).                          ExecuteScript                          (                          "browserstack_executor: {\"action\": \"setSessionStatus\", \"arguments\": {\"condition\":\"passed\", \"reason\": \"File uploaded successfully!\"}}"                          );                          }                          else                          {                          ((                          IJavaScriptExecutor                          )                          driver                          ).                          ExecuteScript                          (                          "browserstack_executor: {\"action\": \"setSessionStatus\", \"arguments\": {\"status\":\"failed\", \"reason\": \"File upload failed!\"}}"                          );                          }                          driver                          .                          Quit                          ();                          }                          }                          }                                              
                                                  <?php                          require_once                          (                          'vendor/autoload.php'                          );                          use                          Facebook\WebDriver\Remote\RemoteWebDriver                          ;                          use                          Facebook\WebDriver\WebDriverBy                          ;                          use                          Facebook\WebDriver\Remote\LocalFileDetector                          ;                          $caps                          =                          array                          (                          "browser"                          =>                          "Internet Explorer"                          ,                          "browser_version"                          =>                          "eleven.0"                          ,                          "os"                          =>                          "Windows"                          ,                          "os_version"                          =>                          "10"                          ,                          "browserstack.sendKeys"                          =>                          "truthful"                          ,                          "name"                          =>                          "Bstack-[Php] Sample Exam"                          ,                          "browserstack.debug"                          =>                          "true"                          );                          $web_driver                          =                          RemoteWebDriver                          ::                          create                          (                          "https://YOUR_USERNAME:YOUR_ACCESS_KEY@hub-cloud.browserstack.com/wd/hub"                          ,                          $caps                          );                          $web_driver                          ->                          become                          (                          "http://www.fileconvoy.com"                          );                          $file_input                          =                          $web_driver                          ->                          findElement                          (                          WebDriverBy                          ::                          id                          (                          "upfile_0"                          ));                          $file_input                          ->                          setFileDetector                          (                          new                          LocalFileDetector                          ());                          $file_input                          ->                          sendKeys                          (                          "C:                          \\                          Users                          \\                          hello                          \\                          Documents                          \\                          sound                          \\                          first_noel.mp3"                          );                          //File path in remote machine                          $web_driver                          ->                          findElement                          (                          WebDriverBy                          ::                          id                          (                          "readTermsOfUse"                          ))                          ->                          click                          ();                          $web_driver                          ->                          findElement                          (                          WebDriverBy                          ::                          name                          (                          "upload_button"                          ))                          ->                          submit                          ();                          sleep                          (                          5                          );                          $web_driver                          ->                          quit                          ();                          ?>                                              
                                                  from                          selenium                          import                          webdriver                          from                          selenium.webdriver.common.keys                          import                          Keys                          from                          selenium.webdriver.common.desired_capabilities                          import                          DesiredCapabilities                          from                          selenium.common.exceptions                          import                          TimeoutException                          from                          selenium.webdriver.support.ui                          import                          WebDriverWait                          desired_cap                          =                          {                          'browser'                          :                          'Internet Explorer'                          ,                          'browser_version'                          :                          '11.0'                          ,                          'os'                          :                          'Windows'                          ,                          'os_version'                          :                          'ten'                          ,                          'browserstack.sendKeys'                          :                          'true'                          ,                          'browserstack.debug'                          :                          'true'                          ,                          'name'                          :                          'Bstack-[Python] Sample Test'                          }                          driver                          =                          webdriver                          .                          Remote                          (                          command_executor                          =                          'http://YOUR_USERNAME:YOUR_ACCESS_KEY@hub.browserstack.com/wd/hub'                          ,                          desired_capabilities                          =                          desired_cap                          )                          driver                          .                          get                          (                          'http://www.fileconvoy.com'                          )                          commuter                          .                          find_element_by_id                          (                          'upfile_0'                          ).                          send_keys                          (                          'C:                          \\                          Users                          \\                          hullo                          \\                          Documents                          \\                          sound                          \\                          first_noel.mp3'                          )                          #File path in remote automobile                                                    commuter                          .                          find_element_by_id                          (                          'readTermsOfUse'                          ).                          click                          ()                          driver                          .                          find_element_by_name                          (                          'upload_button'                          ).                          submit                          ()                          try                          :                          WebDriverWait                          (                          commuter                          ,                          5                          ).                          until                          (                          lambda                          10                          :                          x                          .                          find_element_by_id                          (                          'TopMessage'                          ))                          if                          (                          commuter                          .                          find_element_by_id                          (                          'TopMessage'                          ).                          text                          ==                          "Your file(s) have been successfully uploaded."                          ):                          # Setting the status of test as 'passed' or 'failed' based on the condition; if championship of the spider web page starts with 'BrowserStack'                                                    driver                          .                          execute_script                          (                          'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"passed", "reason": "File uploaded!"}}'                          )                          else                          :                          driver                          .                          execute_script                          (                          'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed", "reason": "File upload failed"}}'                          )                          except                          TimeoutException                          :                          commuter                          .                          execute_script                          (                          'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed", "reason": "File failed to upload in five seconds"}}'                          )                          driver                          .                          quit                          ()                                              
                                                  require                          'rubygems'                          require                          'selenium-webdriver'                          # Input capabilities                          caps                          =                          Selenium                          ::                          WebDriver                          ::                          Remote                          ::                          Capabilities                          .                          new                          caps                          [                          'browser'                          ]                          =                          'Internet Explorer'                          caps                          [                          'browser_version'                          ]                          =                          'eleven.0'                          caps                          [                          'os'                          ]                          =                          'Windows'                          caps                          [                          'os_version'                          ]                          =                          '10'                          caps                          [                          'name'                          ]                          =                          'Bstack-[Ruddy] Sample Test'                          caps                          [                          'browserstack.sendKeys'                          ]                          =                          'true'                          caps                          [                          'browserstack.debug'                          ]                          =                          'truthful'                          caps                          [                          "javascriptEnabled"                          ]                          =                          'true'                          #Enabling the javascriptEnabled capability to execute javascript in the test script                          driver                          =                          Selenium                          ::                          WebDriver                          .                          for                          (                          :remote                          ,                          :url                          =>                          "http://YOUR_USERNAME:YOUR_ACCESS_KEY@hub-cloud.browserstack.com/wd/hub"                          ,                          :desired_capabilities                          =>                          caps                          )                          driver                          .                          file_detector                          =                          lambda                          do                          |                          args                          |                          str                          =                          args                          .                          offset                          .                          to_s                          str                          if                          File                          .                          exist?                          (                          str                          )                          end                          driver                          .                          navigate                          .                          to                          "http://www.fileconvoy.com"                          commuter                          .                          find_element                          (                          :id                          ,                          "upfile_0"                          ).                          send_keys                          (                          "C:                          \\                          Users                          \\                          hello                          \\                          Documents                          \\                          sound                          \\                          first_noel.mp3"                          )                          #File path in remote automobile                          driver                          .                          execute_script                          (                          'certificate.getElementById("readTermsOfUse").click();'                          )                          driver                          .                          find_element                          (                          :proper name                          ,                          "upload_button"                          ).                          submit                          sleep                          (                          5                          )                          driver                          .                          quit                                              
                                                  utilize                          Selenium::Remote::                          Commuter                          ;                          #Input capabilities                          my                          $extraCaps                          =                          {                          "                          browser                          "                          =>                          "                          Cyberspace Explorer                          ",                          "                          browser_version                          "                          =>                          "                          xi.0                          ",                          "                          os                          "                          =>                          "                          Windows                          ",                          "                          os_version                          "                          =>                          "                          10                          ",                          "                          browserstack.sendKeys                          "                          =>                          "                          true                          ",                          "                          browserstack.debug                          "                          =>                          "                          true                          ",                          "                          name                          "                          =>                          "                          Bstack-[Perl] Sample Exam                          "                          };                          my                          $login                          =                          "                          YOUR_USERNAME                          ";                          my                          $central                          =                          "                          YOUR_ACCESS_KEY                          ";                          my                          $host                          =                          "                          $login                          :                          $primal                          \@                          hub-cloud.browserstack.com                          ";                          my                          $driver                          =                          new                          Selenium::Remote::                          Driver                          ('                          remote_server_addr                          '                          =>                          $host                          ,                          '                          port                          '                          =>                          '                          eighty                          ',                          '                          extra_capabilities                          '                          =>                          $extraCaps                          );                          my                          $remote_fname                          =                          $driver                          ->                          upload_file                          ("                          C:                          \\                          Users                          \\                          hello                          \\                          Documents                          \\                          sound                          \\                          first_noel.mp3                          ");                          #File path in remote machine                          $driver                          ->                          become                          ('                          http://world wide web.fileconvoy.com                          ');                          $driver                          ->                          find_element                          ('                          upfile_0                          ','                          id                          ')                          ->                          send_keys                          (                          $remote_fname                          );                          $commuter                          ->                          find_element                          ('                          readTermsOfUse                          ',                          '                          id                          ')                          ->                          click                          ();                          $driver                          ->                          find_element                          ('                          upload_button                          ',                          '                          name                          ')                          ->                          submit                          ();                          sleep                          40                          ;                          $driver                          ->                          quit                          ();                                              

Notation: Other browsers include Chrome, Firefox, Edge and Safari browsers.

You tin can employ those files to test your web app's file upload functionality using Selenium'due south LocalFileDetector method and the file path.

                                                  import                          org.openqa.selenium.By                          ;                          import                          org.openqa.selenium.JavascriptExecutor                          ;                          import                          org.openqa.selenium.remote.DesiredCapabilities                          ;                          import                          org.openqa.selenium.remote.LocalFileDetector                          ;                          import                          org.openqa.selenium.remote.RemoteWebDriver                          ;                          import                          org.openqa.selenium.support.ui.ExpectedConditions                          ;                          import                          org.openqa.selenium.back up.ui.WebDriverWait                          ;                          import                          coffee.net.URL                          ;                          public                          class                          JavaSample                          {                          public                          static                          final                          String                          AUTOMATE_USERNAME                          =                          "YOUR_USERNAME"                          ;                          public                          static                          final                          String                          AUTOMATE_KEY                          =                          "YOUR_ACCESS_KEY"                          ;                          public                          static                          final                          String                          URL                          =                          "https://"                          +                          AUTOMATE_USERNAME                          +                          ":"                          +                          AUTOMATE_KEY                          +                          "@hub-deject.browserstack.com/wd/hub"                          ;                          public                          static                          void                          chief                          (                          String                          []                          args                          )                          throws                          Exception                          {                          DesiredCapabilities                          caps                          =                          new                          DesiredCapabilities                          ();                          caps                          .                          setCapability                          (                          "browser"                          ,                          "chrome"                          );                          caps                          .                          setCapability                          (                          "os"                          ,                          "windows"                          );                          caps                          .                          setCapability                          (                          "browser_version"                          ,                          "latest"                          );                          caps                          .                          setCapability                          (                          "os_version"                          ,                          "10"                          );                          caps                          .                          setCapability                          (                          "proper name"                          ,                          "Bstack-[Java] Sample Test"                          );                          RemoteWebDriver                          driver                          =                          new                          RemoteWebDriver                          (                          new                          URL                          (                          URL                          ),                          caps                          );                          driver                          .                          setFileDetector                          (                          new                          LocalFileDetector                          ());                          driver                          .                          get                          (                          "http://www.fileconvoy.com/"                          );                          driver                          .                          findElement                          (                          By                          .                          id                          (                          "upfile_0"                          )).                          sendKeys                          (                          "C:\\Users\\howdy\\Documents\\images\\wallpaper1.jpg"                          );                          //File path in remote motorcar                          driver                          .                          findElement                          (                          Past                          .                          id                          (                          "readTermsOfUse"                          )).                          click                          ();                          driver                          .                          findElement                          (                          By                          .                          name                          (                          "upload_button"                          )).                          submit                          ();                          JavascriptExecutor                          jse                          =                          (                          JavascriptExecutor                          )                          driver                          ;                          attempt                          {                          WebDriverWait                          wait                          =                          new                          WebDriverWait                          (                          driver                          ,                          5                          );                          wait                          .                          until                          (                          ExpectedConditions                          .                          presenceOfElementLocated                          (                          Past                          .                          id                          (                          "TopMessage"                          )));                          if                          (                          driver                          .                          findElementById                          (                          "TopMessage"                          ).                          getText                          ().                          contains                          (                          "successfully uploaded"                          ))                          {                          jse                          .                          executeScript                          (                          "browserstack_executor: {\"action\": \"setSessionStatus\", \"arguments\": {\"status\": \"passed\", \"reason\": \"File uploaded successfully\"}}"                          );                          }                          else                          {                          jse                          .                          executeScript                          (                          "browserstack_executor: {\"action\": \"setSessionStatus\", \"arguments\": {\"status\": \"failed\", \"reason\": \"File upload failed\"}}"                          );                          }                          }                          catch                          (                          Exception                          e                          )                          {                          jse                          .                          executeScript                          (                          "browserstack_executor: {\"activeness\": \"setSessionStatus\", \"arguments\": {\"condition\": \"failed\", \"reason\": \"File could not be uploaded in v seconds\"}}"                          );                          }                          driver                          .                          quit                          ();                          }                          }                                              
                                                  const                          webdriver                          =                          crave                          (                          '                          selenium-webdriver                          '                          );                          const                          fs                          =                          crave                          (                          '                          fs                          '                          );                          const                          remote                          =                          require                          (                          '                          selenium-webdriver/remote                          '                          );                          // Input capabilities                          const                          capabilities                          =                          {                          '                          browserName                          '                          :                          '                          safari                          '                          ,                          '                          browser_version                          '                          :                          '                          latest                          '                          ,                          '                          bone                          '                          :                          '                          Os X                          '                          ,                          '                          os_version                          '                          :                          '                          Big Sur                          '                          ,                          '                          proper name                          '                          :                          '                          Safari test file upload                          '                          ,                          // test name                          '                          build                          '                          :                          '                          File upload testing                          '                          // Build proper noun                          }                          async                          function                          runTestWithCaps                          ()                          {                          permit                          driver                          =                          new                          webdriver                          .                          Builder                          ()                          .                          usingServer                          (                          '                          http://YOUR_USERNAME:YOUR_ACCESS_KEY@hub-deject.browserstack.com/wd/hub                          '                          )                          .                          withCapabilities                          (                          capabilities                          )                          .                          build                          ();                          //This will detect your local file                          await                          driver                          .                          setFileDetector                          (                          new                          remote                          .                          FileDetector                          );                          look                          driver                          .                          get                          (                          '                          http://www.fileconvoy.com/                          '                          );                          await                          driver                          .                          findElement                          (                          webdriver                          .                          By                          .                          id                          (                          '                          upfile_0                          '                          )).                          sendKeys                          (                          '                          /Users/test1/Documents/video/saper.avi                          '                          );                          // The file path in remote Mac machine is given here. Run across the sample file paths for different remote machines in the documentation page                          await                          driver                          .                          findElement                          (                          webdriver                          .                          By                          .                          id                          (                          '                          readTermsOfUse                          '                          )).                          click                          ();                          look                          driver                          .                          findElement                          (                          webdriver                          .                          By                          .                          id                          (                          '                          upload_button                          '                          )).                          click                          ();                          await                          driver                          .                          wait                          (                          webdriver                          .                          until                          .                          elementLocated                          (                          webdriver                          .                          By                          .                          id                          (                          '                          TopMessage                          '                          )),                          5000                          );                          if                          ((                          await                          driver                          .                          findElement                          (                          webdriver                          .                          Past                          .                          id                          (                          '                          TopMessage                          '                          )).                          getText                          ()).                          includes                          (                          '                          successfully uploaded                          '                          ))                          {                          await                          driver                          .                          executeScript                          (                          '                          browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"passed","reason": "File upload successful"}}                          '                          );                          }                          else                          {                          await                          driver                          .                          executeScript                          (                          '                          browserstack_executor: {"activity": "setSessionStatus", "arguments": {"status":"failed","reason": "File upload failed"}}                          '                          );                          }                          await                          driver                          .                          quit                          ();                          }                          runTestWithCaps                          ();                                              
                                                  using                          System                          ;                          using                          OpenQA.Selenium                          ;                          using                          OpenQA.Selenium.Remote                          ;                          namespace                          SeleniumTest                          {                          class                          Program                          {                          static                          void                          Master                          (                          cord                          []                          args                          )                          {                          IWebDriver                          driver                          ;                          OpenQA                          .                          Selenium                          .                          Chrome                          .                          ChromeOptions                          capability                          =                          new                          OpenQA                          .                          Selenium                          .                          Chrome                          .                          ChromeOptions                          ();                          capability                          .                          AddAdditionalCapability                          (                          "browser"                          ,                          "Chrome"                          ,                          truthful                          );                          adequacy                          .                          AddAdditionalCapability                          (                          "browser_version"                          ,                          "latest"                          ,                          true                          );                          capability                          .                          AddAdditionalCapability                          (                          "bone"                          ,                          "Windows"                          ,                          true                          );                          adequacy                          .                          AddAdditionalCapability                          (                          "os_version"                          ,                          "10"                          ,                          true                          );                          capability                          .                          AddAdditionalCapability                          (                          "browserstack.user"                          ,                          "YOUR_USERNAME"                          ,                          true                          );                          capability                          .                          AddAdditionalCapability                          (                          "browserstack.cardinal"                          ,                          "YOUR_ACCESS_KEY"                          ,                          true                          );                          capability                          .                          AddAdditionalCapability                          (                          "name"                          ,                          "Bstack-[C_sharp] Sample Examination"                          ,                          true                          );                          driver                          =                          new                          RemoteWebDriver                          (                          new                          Uri                          (                          "http://hub-cloud.browserstack.com/wd/hub/"                          ),                          capability                          );                          commuter                          .                          Navigate                          ().                          GoToUrl                          (                          "http://world wide web.fileconvoy.com"                          );                          IWebElement                          uploadFile                          =                          driver                          .                          FindElement                          (                          By                          .                          Id                          (                          "upfile_0"                          ));                          Panel                          .                          WriteLine                          (                          driver                          .                          Title                          );                          Cord                          path                          =                          "C:\\Users\\hello\\Documents\\images\\wallpaper1.jpg"                          ;                          //File path in remote machine                          uploadFile                          .                          SendKeys                          (                          path                          );                          driver                          .                          FindElement                          (                          By                          .                          Id                          (                          "readTermsOfUse"                          )).                          Click                          ();                          driver                          .                          FindElement                          (                          By                          .                          Id                          (                          "upload_button"                          )).                          Click                          ();                          commuter                          .                          Manage                          ().                          Timeouts                          ().                          ImplicitWait                          =                          TimeSpan                          .                          FromSeconds                          (                          5                          );                          String                          result                          =                          driver                          .                          FindElement                          (                          By                          .                          CssSelector                          (                          "#TopMessage"                          )).                          Text                          ;                          if                          (                          upshot                          .                          Contains                          (                          "successfully uploaded"                          ))                          {                          ((                          IJavaScriptExecutor                          )                          commuter                          ).                          ExecuteScript                          (                          "browserstack_executor: {\"action\": \"setSessionStatus\", \"arguments\": {\"status\":\"passed\", \"reason\": \"File uploaded successfully!\"}}"                          );                          }                          else                          {                          ((                          IJavaScriptExecutor                          )                          commuter                          ).                          ExecuteScript                          (                          "browserstack_executor: {\"action\": \"setSessionStatus\", \"arguments\": {\"status\":\"failed\", \"reason\": \"File upload failed!\"}}"                          );                          }                          driver                          .                          Quit                          ();                          }                          }                          }                                              
                                                  <?php                          require_once                          (                          'vendor/autoload.php'                          );                          use                          Facebook\WebDriver\Remote\RemoteWebDriver                          ;                          use                          Facebook\WebDriver\WebDriverBy                          ;                          use                          Facebook\WebDriver\Remote\LocalFileDetector                          ;                          $caps                          =                          array                          (                          "browser"                          =>                          "Chrome"                          ,                          "browser_version"                          =>                          "75.0"                          ,                          "os"                          =>                          "Windows"                          ,                          "os_version"                          =>                          "x"                          ,                          "proper name"                          =>                          "Bstack-[Php] Sample Test"                          );                          $web_driver                          =                          RemoteWebDriver                          ::                          create                          (                          "https://YOUR_USERNAME:YOUR_ACCESS_KEY@hub-cloud.browserstack.com/wd/hub"                          ,                          $caps                          );                          $web_driver                          ->                          become                          (                          "http://www.fileconvoy.com"                          );                          $file_input                          =                          $web_driver                          ->                          findElement                          (                          WebDriverBy                          ::                          id                          (                          "upfile_0"                          ));                          $file_input                          ->                          setFileDetector                          (                          new                          LocalFileDetector                          ());                          $file_input                          ->                          sendKeys                          (                          "C:                          \\                          Users                          \\                          howdy                          \\                          Documents                          \\                          images                          \\                          wallpaper1.jpg"                          );                          //File path in remote automobile                          $web_driver                          ->                          findElement                          (                          WebDriverBy                          ::                          id                          (                          "readTermsOfUse"                          ))                          ->                          click                          ();                          $web_driver                          ->                          findElement                          (                          WebDriverBy                          ::                          name                          (                          "upload_button"                          ))                          ->                          submit                          ();                          slumber                          (                          v                          );                          $web_driver                          ->                          quit                          ();                          ?>                                              
                                                  from                          selenium                          import                          webdriver                          from                          selenium.webdriver.common.keys                          import                          Keys                          from                          selenium.webdriver.common.desired_capabilities                          import                          DesiredCapabilities                          from                          selenium.mutual.exceptions                          import                          TimeoutException                          from                          selenium.webdriver.support.ui                          import                          WebDriverWait                          desired_cap                          =                          {                          'browser'                          :                          'Chrome'                          ,                          'browser_version'                          :                          '75.0'                          ,                          'bone'                          :                          'Windows'                          ,                          'os_version'                          :                          '10'                          ,                          'name'                          :                          'Bstack-[Python] Sample Test'                          }                          commuter                          =                          webdriver                          .                          Remote                          (                          command_executor                          =                          'http://YOUR_USERNAME:YOUR_ACCESS_KEY@hub.browserstack.com/wd/hub'                          ,                          desired_capabilities                          =                          desired_cap                          )                          driver                          .                          become                          (                          'http://www.fileconvoy.com'                          )                          driver                          .                          find_element_by_id                          (                          'upfile_0'                          ).                          send_keys                          (                          'C:                          \\                          Users                          \\                          how-do-you-do                          \\                          Documents                          \\                          images                          \\                          wallpaper1.jpg'                          )                          #File path in remote machine                                                    commuter                          .                          find_element_by_id                          (                          'readTermsOfUse'                          ).                          click                          ()                          driver                          .                          find_element_by_name                          (                          'upload_button'                          ).                          submit                          ()                          try                          :                          WebDriverWait                          (                          driver                          ,                          v                          ).                          until                          (                          lambda                          10                          :                          x                          .                          find_element_by_id                          (                          'TopMessage'                          ))                          if                          (                          commuter                          .                          find_element_by_id                          (                          'TopMessage'                          ).                          text                          ==                          "Your file(s) accept been successfully uploaded."                          ):                          # Setting the status of exam every bit 'passed' or 'failed' based on the condition; if title of the web page starts with 'BrowserStack'                                                    driver                          .                          execute_script                          (                          'browserstack_executor: {"action": "setSessionStatus", "arguments": {"condition":"passed", "reason": "File uploaded!"}}'                          )                          else                          :                          driver                          .                          execute_script                          (                          'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed", "reason": "File upload failed"}}'                          )                          except                          TimeoutException                          :                          commuter                          .                          execute_script                          (                          'browserstack_executor: {"action": "setSessionStatus", "arguments": {"status":"failed", "reason": "File failed to upload in 5 seconds"}}'                          )                          commuter                          .                          quit                          ()                                              
                                                  crave                          'rubygems'                          require                          'selenium-webdriver'                          # Input capabilities                          caps                          =                          Selenium                          ::                          WebDriver                          ::                          Remote                          ::                          Capabilities                          .                          new                          caps                          [                          'browser'                          ]                          =                          'Chrome'                          caps                          [                          'browser_version'                          ]                          =                          '75.0'                          caps                          [                          'os'                          ]                          =                          'Windows'                          caps                          [                          'os_version'                          ]                          =                          '10'                          caps                          [                          'proper name'                          ]                          =                          'Bstack-[Cherry] Sample Test'                          driver                          =                          Selenium                          ::                          WebDriver                          .                          for                          (                          :remote                          ,                          :url                          =>                          "http://YOUR_USERNAME:YOUR_ACCESS_KEY@hub-cloud.browserstack.com/wd/hub"                          ,                          :desired_capabilities                          =>                          caps                          )                          driver                          .                          file_detector                          =                          lambda                          exercise                          |                          args                          |                          str                          =                          args                          .                          starting time                          .                          to_s                          str                          if                          File                          .                          exist?                          (                          str                          )                          end                          driver                          .                          navigate                          .                          to                          "http://www.fileconvoy.com"                          driver                          .                          find_element                          (                          :id                          ,                          "upfile_0"                          ).                          send_keys                          (                          "C:                          \\                          Users                          \\                          howdy                          \\                          Documents                          \\                          images                          \\                          wallpaper1.jpg"                          );                          #File path in remote motorcar                          driver                          .                          find_element                          (                          :id                          ,                          "readTermsOfUse"                          ).                          click                          ;                          driver                          .                          find_element                          (                          :name                          ,                          "upload_button"                          ).                          submit                          ;                          sleep                          (                          five                          )                          driver                          .                          quit                                              
                                                  use                          Selenium::Remote::                          Driver                          ;                          #Input capabilities                          my                          $extraCaps                          =                          {                          "                          browser                          "                          =>                          "                          Chrome                          ",                          "                          browser_version                          "                          =>                          "                          75.0                          ",                          "                          os                          "                          =>                          "                          Windows                          ",                          "                          os_version                          "                          =>                          "                          10                          ",                          "                          name                          "                          =>                          "                          Bstack-[Perl] Sample Test                          "                          };                          my                          $login                          =                          "                          YOUR_USERNAME                          ";                          my                          $key                          =                          "                          YOUR_ACCESS_KEY                          ";                          my                          $host                          =                          "                          $login                          :                          $key                          \@                          hub-cloud.browserstack.com                          ";                          my                          $driver                          =                          new                          Selenium::Remote::                          Driver                          ('                          remote_server_addr                          '                          =>                          $host                          ,                          '                          port                          '                          =>                          '                          lxxx                          ',                          '                          extra_capabilities                          '                          =>                          $extraCaps                          );                          my                          $remote_fname                          =                          $driver                          ->                          upload_file                          ("                          C:                          \\                          Users                          \\                          howdy                          \\                          Documents                          \\                          images                          \\                          wallpaper1.jpg                          ");                          #File path in remote automobile                          $driver                          ->                          get                          ('                          http://www.fileconvoy.com                          ');                          $commuter                          ->                          find_element                          ('                          upfile_0                          ','                          id                          ')                          ->                          send_keys                          (                          $remote_fname                          );                          $driver                          ->                          find_element                          ('                          readTermsOfUse                          ',                          '                          id                          ')                          ->                          click                          ();                          $driver                          ->                          find_element                          ('                          upload_button                          ',                          '                          name                          ')                          ->                          submit                          ();                          sleep                          forty                          ;                          $driver                          ->                          quit                          ();                                              
                                              import                        java.net.URL                        ;                        import                        java.util.List                        ;                        import                        java.util.Set                        ;                        import                        java.net.MalformedURLException                        ;                        import                        org.openqa.selenium.support.ui.WebDriverWait                        ;                        import                        org.openqa.selenium.By                        ;                        import                        org.openqa.selenium.WebElement                        ;                        import                        org.openqa.selenium.remote.DesiredCapabilities                        ;                        import                        org.openqa.selenium.remote.RemoteWebElement                        ;                        import                        org.openqa.selenium.support.ui.ExpectedConditions                        ;                        import                        io.appium.java_client.MobileBy                        ;                        import                        io.appium.java_client.ios.IOSDriver                        ;                        import                        io.appium.java_client.ios.IOSElement                        ;                        import                        org.apache.eatables.lang3.*                        ;                        public                        course                        Upload                        extends                        Thread                        {                        public                        static                        String                        userName                        =                        "YOUR_USERNAME"                        ;                        public                        static                        String                        accessKey                        =                        "YOUR_ACCESS_KEY"                        ;                        public                        static                        void                        main                        (                        Cord                        args                        [])                        throws                        MalformedURLException                        ,                        InterruptedException                        {                        DesiredCapabilities                        caps                        =                        new                        DesiredCapabilities                        ();                        caps                        .                        setCapability                        (                        "device"                        ,                        "iPhone 12 Pro Max"                        );                        caps                        .                        setCapability                        (                        "os_version"                        ,                        "14"                        );                        caps                        .                        setCapability                        (                        "real_mobile"                        ,                        "true"                        );                        caps                        .                        setCapability                        (                        "project"                        ,                        "My First Project"                        );                        caps                        .                        setCapability                        (                        "build"                        ,                        "My First Build"                        );                        caps                        .                        setCapability                        (                        "name"                        ,                        "Bstack-[Java] Sample Examination"                        );                        caps                        .                        setCapability                        (                        "nativeWebTap"                        ,                        "true"                        );                        IOSDriver                        <                        IOSElement                        >                        commuter                        =                        new                        IOSDriver                        <                        IOSElement                        >(                        new                        URL                        (                        "https://"                        +                        userName                        +                        ":"                        +                        accessKey                        +                        "@hub-cloud.browserstack.com/wd/hub"                        ),                        caps                        );                        driver                        .                        become                        (                        "https://the-internet.herokuapp.com/upload"                        );                        Thread                        .                        sleep                        (                        5000                        );                        driver                        .                        findElement                        (                        By                        .                        id                        (                        "file-upload"                        )).                        click                        ();                        commuter                        .                        context                        (                        "NATIVE_APP"                        );                        driver                        .                        findElement                        (                        By                        .                        proper noun                        (                        "Photo Library"                        )).                        click                        ();                        Thread                        .                        sleep                        (                        5000                        );                        List                        list                        =                        driver                        .                        findElements                        (                        By                        .                        className                        (                        "XCUIElementTypeImage"                        ));                        ((                        IOSElement                        )                        list                        .                        go                        (                        0                        )).                        click                        ();                        Thread                        .                        sleep                        (                        5000                        );                        commuter                        .                        findElement                        (                        By                        .                        name                        (                        "Choose"                        )).                        click                        ();                        Set                        <                        String                        >                        contextName                        =                        driver                        .                        getContextHandles                        ();                        driver                        .                        context                        (                        contextName                        .                        toArray                        ()[                        1                        ].                        toString                        ());                        driver                        .                        findElement                        (                        By                        .                        id                        (                        "file-submit"                        )).                        click                        ();                        driver                        .                        quit                        ();                        }                        }                                          
                                              var                        wd                        =                        require                        (                        '                        wd                        '                        );                        // Input capabilities                        const                        capabilities                        =                        {                        '                        device                        '                        :                        '                        iPhone 12                        '                        ,                        '                        realMobile                        '                        :                        '                        truthful                        '                        ,                        '                        os_version                        '                        :                        '                        14.0                        '                        ,                        '                        browserName                        '                        :                        '                        iPhone                        '                        ,                        '                        proper name                        '                        :                        '                        BStack-[NodeJS] Sample Test                        '                        ,                        '                        build                        '                        :                        '                        BStack Build Number 1                        '                        ,                        "                        nativeWebTap                        "                        :                        truthful                        }                        async                        function                        runTestWithCaps                        ()                        {                        let                        driver                        =                        wd                        .                        promiseRemote                        (                        "                        http://YOUR_USERNAME:YOUR_ACCESS_KEY@hub-cloud.browserstack.com/wd/hub                        "                        );                        await                        driver                        .                        init                        (                        capabilities                        );                        wait                        commuter                        .                        become                        (                        "                        https://the-net.herokuapp.com/upload                        "                        )                        await                        new                        Promise                        (                        r                        =>                        setTimeout                        (                        r                        ,                        2000                        ));                        chemical element                        =                        expect                        commuter                        .                        waitForElementById                        (                        '                        file-upload                        '                        )                        expect                        chemical element                        .                        click                        ()                        wait                        driver                        .                        context                        (                        '                        NATIVE_APP                        '                        )                        element                        =                        await                        driver                        .                        waitForElementByName                        (                        '                        Photo Library                        '                        )                        wait                        element                        .                        click                        ()                        await                        new                        Promise                        (                        r                        =>                        setTimeout                        (                        r                        ,                        2000                        ));                        element                        =                        await                        driver                        .                        elementsByClassName                        (                        '                        XCUIElementTypeImage                        '                        )                        await                        element                        [                        0                        ].                        click                        ()                        await                        new                        Promise                        (                        r                        =>                        setTimeout                        (                        r                        ,                        5000                        ));                        element                        =                        expect                        driver                        .                        waitForElementByName                        (                        '                        Choose                        '                        )                        await                        element                        .                        click                        ()                        look                        new                        Promise                        (                        r                        =>                        setTimeout                        (                        r                        ,                        10000                        ));                        contexts                        =                        expect                        driver                        .                        contexts                        ();                        wait                        driver                        .                        context                        (                        contexts                        [                        one                        ])                        element                        =                        wait                        driver                        .                        waitForElementById                        (                        "                        file-submit                        "                        )                        await                        element                        .                        click                        ()                        look                        driver                        .                        quit                        ();                        }                        runTestWithCaps                        ();                                          
                                              using                        System                        ;                        using                        Arrangement.Threading                        ;                        using                        OpenQA.Selenium                        ;                        using                        OpenQA.Selenium.Appium                        ;                        using                        OpenQA.Selenium.Appium.iOS                        ;                        namespace                        SampleTests                        {                        class                        UploadFile                        {                        static                        void                        Main                        (                        cord                        []                        args                        )                        {                        AppiumDriver                        <                        IWebElement                        >                        driver                        ;                        AppiumOptions                        adequacy                        =                        new                        AppiumOptions                        ();                        adequacy                        .                        AddAdditionalCapability                        (                        "browserName"                        ,                        "iPhone"                        );                        adequacy                        .                        AddAdditionalCapability                        (                        "device"                        ,                        "iPhone 12"                        );                        adequacy                        .                        AddAdditionalCapability                        (                        "realMobile"                        ,                        "true"                        );                        capability                        .                        AddAdditionalCapability                        (                        "os_version"                        ,                        "xiv"                        );                        adequacy                        .                        AddAdditionalCapability                        (                        "browserstack.debug"                        ,                        "true"                        );                        capability                        .                        AddAdditionalCapability                        (                        "nativeWebTap"                        ,                        "true"                        );                        commuter                        =                        new                        IOSDriver                        <                        IWebElement                        >(                        new                        Uri                        (                        "https://YOUR_USERNAME:YOUR_ACCESS_KEY@hub-deject.browserstack.com/wd/hub/"                        ),                        capability                        );                        commuter                        .                        Navigate                        ().                        GoToUrl                        (                        "https://the-cyberspace.herokuapp.com/upload"                        );                        Thread                        .                        Sleep                        (                        10000                        );                        driver                        .                        FindElementById                        (                        "file-upload"                        ).                        Click                        ();                        driver                        .                        Context                        =                        "NATIVE_APP"                        ;                        driver                        .                        FindElement                        (                        By                        .                        Proper noun                        (                        "Photo Library"                        )).                        Click                        ();                        Thread                        .                        Sleep                        (                        5000                        );                        IWebElement                        element                        =                        driver                        .                        FindElementsByClassName                        (                        "XCUIElementTypeImage"                        )[                        0                        ];                        element                        .                        Click                        ();                        commuter                        .                        FindElementByName                        (                        "Choose"                        ).                        Click                        ();                        driver                        .                        Context                        =                        driver                        .                        Contexts                        [                        1                        ];                        Panel                        .                        WriteLine                        (                        commuter                        .                        Title                        );                        commuter                        .                        FindElementById                        (                        "file-submit"                        ).                        Click                        ();                        driver                        .                        Quit                        ();                        }                        }                        }                                          
                                              <?php                        require                        'ios_upload.php'                        ;                        class                        AppAutomateTest                        extends                        BrowserStackTest                        {                        public                        role                        sendkeys                        (                        $elem                        ,                        $keys                        )                        {                        $data                        =                        array                        (                        'value'                        =>                        str_split                        (                        $keys                        ),                        'text'                        =>                        $keys                        );                        $url                        =                        $this                        ->                        getSessionUrl                        ()                        ->                        descend                        (                        'element'                        )                        ->                        descend                        (                        $elem                        ->                        getId                        ())                        ->                        descend                        (                        'value'                        );                        $this                        ->                        getDriver                        ()                        ->                        whorl                        (                        'POST'                        ,                        $url                        ,                        $data                        );                        }                        public                        role                        testNativeApplication                        ()                        {                        $this                        ->                        url                        (                        "https://the-internet.herokuapp.com/upload"                        );                        $this                        ->                        byId                        (                        'file-upload'                        )                        ->                        click                        ();                        $this                        ->                        context                        (                        'NATIVE_APP'                        );                        $this                        ->                        byName                        (                        'Photo Library'                        )                        ->                        click                        ();                        sleep                        (                        5                        );                        $this                        ->                        elements                        (                        $this                        ->                        using                        (                        "class name"                        )                        ->                        value                        (                        "XCUIElementTypeImage"                        ))[                        0                        ]                        ->                        click                        ();                        $this                        ->                        byName                        (                        'Choose'                        )                        ->                        click                        ();                        $contexts                        =                        $this                        ->                        contexts                        ();                        $this                        ->                        context                        (                        $contexts                        [                        1                        ]);                        $this                        ->                        byId                        (                        "file-submit"                        )                        ->                        click                        ();                        }                        }                        ?>                                          
                                              from                        appium                        import                        webdriver                        from                        appium.webdriver.common.mobileby                        import                        MobileBy                        from                        selenium.webdriver.support.ui                        import                        WebDriverWait                        from                        selenium.webdriver.support                        import                        expected_conditions                        as                        EC                        from                        selenium.webdriver.common                        import                        action_chains                        ,                        keys                        from                        fourth dimension                        import                        sleep                        from                        selenium.webdriver.common.by                        import                        By                        desired_cap                        =                        {                        "device"                        :                        "iPhone 12 Pro max"                        ,                        "os_version"                        :                        "14"                        ,                        "real_mobile"                        :                        "truthful"                        ,                        "browserstack.debug"                        :                        "true"                        ,                        "nativeWebTap"                        :                        "truthful"                        }                        driver                        =                        webdriver                        .                        Remote                        (                        command_executor                        =                        'http://YOUR_USERNAME:YOUR_ACCESS_KEY@hub-cloud.browserstack.com/wd/hub'                        ,                        desired_capabilities                        =                        desired_cap                        )                        driver                        .                        get                        (                        "https://the-net.herokuapp.com/upload"                        )                        slumber                        (                        ten                        )                        driver                        .                        find_element_by_id                        (                        'file-upload'                        ).                        click                        ()                        driver                        .                        switch_to                        .                        context                        (                        'NATIVE_APP'                        )                        driver                        .                        find_element_by_name                        (                        'Photo Library'                        ).                        click                        ()                        sleep                        (                        5                        )                        elements                        =                        commuter                        .                        find_elements_by_class_name                        (                        "XCUIElementTypeImage"                        )                        elements                        [                        0                        ].                        click                        ()                        # one represents second element from the list of 9 preloaded images and videos                                                slumber                        (                        5                        )                        commuter                        .                        find_element_by_name                        (                        "Choose"                        ).                        click                        ()                        sleep                        (                        10                        )                        driver                        .                        switch_to                        .                        context                        (                        driver                        .                        contexts                        [                        1                        ])                        driver                        .                        find_element_by_id                        (                        "file-submit"                        ).                        click                        ()                        driver                        .                        quit                        ()                                          
                                              crave                        'rubygems'                        crave                        'appium_lib'                        # Input capabilities                        caps                        =                        {}                        caps                        [                        'device'                        ]                        =                        'iPhone 12'                        caps                        [                        'os_version'                        ]                        =                        'fourteen'                        caps                        [                        'platformName'                        ]                        =                        'iOS'                        caps                        [                        'realMobile'                        ]                        =                        'true'                        caps                        [                        'name'                        ]                        =                        'BStack-[Ruby-red] Sample Test'                        # test proper name                        caps                        [                        'build'                        ]                        =                        'BStack Build Number 1'                        # CI/CD chore or build name                        caps                        [                        'nativeWebTap'                        ]                        =                        'true'                        appium_driver                        =                        Appium                        ::                        Driver                        .                        new                        ({                        'caps'                        =>                        caps                        ,                        'appium_lib'                        =>                        {                        :server_url                        =>                        "https://YOUR_USERNAME:YOUR_ACCESS_KEY@hub-cloud.browserstack.com/wd/hub"                        }},                        true                        )                        driver                        =                        appium_driver                        .                        start_driver                        driver                        .                        navigate                        .                        to                        "https://the-internet.herokuapp.com/upload"                        sleep                        (                        5                        )                        commuter                        .                        find_element                        (                        xpath:                                                "//*[@id='file-upload']"                        ).                        click                        driver                        .                        set_context                        (                        'NATIVE_APP'                        )                        sleep                        (                        10                        )                        driver                        .                        find_element                        (                        name:                                                "Photo Library"                        ).                        click                        sleep                        (                        5                        )                        elements                        =                        commuter                        .                        find_elements                        (                        :class_name                        ,                        "XCUIElementTypeImage"                        )                        elements                        [                        0                        ].                        click                        driver                        .                        find_element                        (                        name:                                                "Choose"                        ).                        click                        contexts                        =                        driver                        .                        available_contexts                        driver                        .                        set_context                        contexts                        [                        1                        ]                        driver                        .                        find_element                        (                        :id                        ,                        "file-submit"                        ).                        click                        ()                        commuter                        .                        quit                        ()                                          

Uploading the files which are downloaded from the web in the same Automate session

To do this, you'll need the download file path. The file will be downloaded in these locations on the remote desktops:

                  C:\Documents and Settings\hello\Downloads                                  

Uploading files that are downloaded in the same automate session is not possible in Android devices every bit of now, yet you can upload the file from your motorcar to the web application using the pushFile() method as shown in Uploading files from your auto section

Uploading files that are downloaded in the same automate session tin be implemented on iOS devices using the following iOS snippets.

Through your exam script, you lot can instruct the remote browsers to:

  1. Navigate to a URL.
  2. Download a specific file.
  3. Then upload the file to the web app under test using LocalFileDetector or pushFile and sendkeys method.
                                          import                      java.net.URL                      ;                      import                      java.util.List                      ;                      import                      java.util.Set                      ;                      import                      java.internet.MalformedURLException                      ;                      import                      org.openqa.selenium.back up.ui.WebDriverWait                      ;                      import                      org.openqa.selenium.Past                      ;                      import                      org.openqa.selenium.WebElement                      ;                      import                      org.openqa.selenium.remote.DesiredCapabilities                      ;                      import                      org.openqa.selenium.remote.RemoteWebElement                      ;                      import                      org.openqa.selenium.support.ui.ExpectedConditions                      ;                      import                      io.appium.java_client.MobileBy                      ;                      import                      io.appium.java_client.ios.IOSDriver                      ;                      import                      io.appium.java_client.ios.IOSElement                      ;                      import                      org.apache.eatables.lang3.*                      ;                      public                      class                      Upload                      extends                      Thread                      {                      public                      static                      String                      userName                      =                      "YOUR_USERNAME"                      ;                      public                      static                      Cord                      accessKey                      =                      "YOUR_ACCESS_KEY"                      ;                      public                      static                      void                      main                      (                      String                      args                      [])                      throws                      MalformedURLException                      ,                      InterruptedException                      {                      DesiredCapabilities                      caps                      =                      new                      DesiredCapabilities                      ();                      caps                      .                      setCapability                      (                      "device"                      ,                      "iPhone 12"                      );                      caps                      .                      setCapability                      (                      "os_version"                      ,                      "xiv"                      );                      caps                      .                      setCapability                      (                      "real_mobile"                      ,                      "true"                      );                      caps                      .                      setCapability                      (                      "project"                      ,                      "My Start Project"                      );                      caps                      .                      setCapability                      (                      "build"                      ,                      "My First Build"                      );                      caps                      .                      setCapability                      (                      "name"                      ,                      "Bstack-[Java] Sample Test"                      );                      caps                      .                      setCapability                      (                      "nativeWebTap"                      ,                      "true"                      );                      IOSDriver                      <                      IOSElement                      >                      driver                      =                      new                      IOSDriver                      <                      IOSElement                      >(                      new                      URL                      (                      "https://"                      +                      userName                      +                      ":"                      +                      accessKey                      +                      "@hub-cloud.browserstack.com/wd/hub"                      ),                      caps                      );                      driver                      .                      get                      (                      "https://support.staffbase.com/hc/en-the states/article_attachments/360009197031/username.csv"                      );                      driver                      .                      context                      (                      "NATIVE_APP"                      );                      IOSElement                      download                      =                      (                      IOSElement                      )                      new                      WebDriverWait                      (                      driver                      ,                      30                      ).                      until                      (                      ExpectedConditions                      .                      elementToBeClickable                      (                      MobileBy                      .                      name                      (                      "Download"                      )));                      driver                      .                      findElementByName                      (                      "Download"                      ).                      click                      ();                      Ready                      <                      String                      >                      contextNames                      =                      commuter                      .                      getContextHandles                      ();                      driver                      .                      context                      (                      contextNames                      .                      toArray                      ()[                      1                      ].                      toString                      ());                      commuter                      .                      become                      (                      "https://the-internet.herokuapp.com/upload"                      );                      Thread                      .                      sleep                      (                      5000                      );                      driver                      .                      findElement                      (                      Past                      .                      id                      (                      "file-upload"                      )).                      click                      ();                      driver                      .                      context                      (                      "NATIVE_APP"                      );                      driver                      .                      findElement                      (                      By                      .                      name                      (                      "Browse"                      )).                      click                      ();                      Thread                      .                      sleep                      (                      5000                      );                      driver                      .                      findElement                      (                      Past                      .                      name                      (                      "Recents"                      )).                      click                      ();                      Thread                      .                      sleep                      (                      5000                      );                      IOSElement                      elem                      =                      driver                      .                      findElement                      (                      By                      .                      xpath                      (                      "//XCUIElementTypeCollectionView"                      ));                      List                      list                      =                      elem                      .                      findElements                      (                      By                      .                      xpath                      (                      "//XCUIElementTypeCell"                      ));                      ((                      WebElement                      )                      list                      .                      get                      (                      0                      )).                      click                      ();                      Thread                      .                      sleep                      (                      5000                      );                      Gear up                      <                      Cord                      >                      contextName                      =                      commuter                      .                      getContextHandles                      ();                      driver                      .                      context                      (                      contextName                      .                      toArray                      ()[                      ane                      ].                      toString                      ());                      driver                      .                      findElement                      (                      By                      .                      id                      (                      "file-submit"                      )).                      click                      ();                      driver                      .                      quit                      ();                      }                      }                                      
                                          var                      wd                      =                      require                      (                      '                      wd                      '                      );                      // Input capabilities                      const                      capabilities                      =                      {                      '                      device                      '                      :                      '                      iPhone 12                      '                      ,                      '                      realMobile                      '                      :                      '                      true                      '                      ,                      '                      os_version                      '                      :                      '                      fourteen.0                      '                      ,                      '                      browserName                      '                      :                      '                      iPhone                      '                      ,                      '                      name                      '                      :                      '                      BStack-[NodeJS] Sample Test                      '                      ,                      '                      build                      '                      :                      '                      BStack Build Number 1                      '                      ,                      "                      nativeWebTap                      "                      :                      true                      }                      async                      function                      runTestWithCaps                      ()                      {                      let                      driver                      =                      wd                      .                      promiseRemote                      (                      "                      http://YOUR_USERNAME:YOUR_ACCESS_KEY@hub-cloud.browserstack.com/wd/hub                      "                      );                      await                      commuter                      .                      init                      (                      capabilities                      );                      wait                      driver                      .                      get                      (                      "                      https://support.staffbase.com/hc/en-us/article_attachments/360009197031/username.csv                      "                      );                      await                      new                      Promise                      (                      r                      =>                      setTimeout                      (                      r                      ,                      2000                      ));                      await                      driver                      .                      context                      (                      '                      NATIVE_APP                      '                      );                      let                      element                      =                      await                      driver                      .                      waitForElementByName                      (                      '                      Download                      '                      );                      await                      element                      .                      click                      ()                      let                      contexts                      =                      await                      commuter                      .                      contexts                      ();                      await                      driver                      .                      context                      (                      contexts                      [                      1                      ]);                      await                      new                      Promise                      (                      r                      =>                      setTimeout                      (                      r                      ,                      2000                      ));                      expect                      driver                      .                      go                      (                      "                      https://the-internet.herokuapp.com/upload                      "                      )                      await                      new                      Hope                      (                      r                      =>                      setTimeout                      (                      r                      ,                      2000                      ));                      chemical element                      =                      look                      driver                      .                      waitForElementById                      (                      '                      file-upload                      '                      )                      wait                      element                      .                      click                      ()                      look                      driver                      .                      context                      (                      '                      NATIVE_APP                      '                      )                      element                      =                      await                      driver                      .                      waitForElementByName                      (                      '                      Scan                      '                      )                      await                      element                      .                      click                      ()                      await                      new                      Promise                      (                      r                      =>                      setTimeout                      (                      r                      ,                      2000                      ));                      chemical element                      =                      wait                      driver                      .                      waitForElementByName                      (                      '                      Recents                      '                      )                      await                      element                      .                      click                      ()                      element                      =                      expect                      driver                      .                      waitForElementByXPath                      (                      '                      //XCUIElementTypeCollectionView                      '                      )                      wait                      new                      Hope                      (                      r                      =>                      setTimeout                      (                      r                      ,                      2000                      ));                      let                      elements                      =                      look                      element                      .                      elementsByXPath                      (                      "                      //XCUIElementTypeCell                      "                      )                      look                      elements                      [                      0                      ].                      click                      ()                      contexts                      =                      await                      driver                      .                      contexts                      ();                      await                      commuter                      .                      context                      (                      contexts                      [                      i                      ])                      chemical element                      =                      await                      driver                      .                      waitForElementById                      (                      "                      file-submit                      "                      )                      await                      element                      .                      click                      ()                      look                      driver                      .                      quit                      ();                      }                      runTestWithCaps                      ();                                      
                                          using                      System                      ;                      using                      System.Threading                      ;                      using                      OpenQA.Selenium                      ;                      using                      OpenQA.Selenium.Appium                      ;                      using                      OpenQA.Selenium.Appium.iOS                      ;                      namespace                      SampleTests                      {                      class                      UploadFile                      {                      static                      void                      Master                      (                      cord                      []                      args                      )                      {                      AppiumDriver                      <                      IWebElement                      >                      commuter                      ;                      AppiumOptions                      adequacy                      =                      new                      AppiumOptions                      ();                      capability                      .                      AddAdditionalCapability                      (                      "browserName"                      ,                      "iPhone"                      );                      capability                      .                      AddAdditionalCapability                      (                      "device"                      ,                      "iPhone 12"                      );                      adequacy                      .                      AddAdditionalCapability                      (                      "realMobile"                      ,                      "truthful"                      );                      adequacy                      .                      AddAdditionalCapability                      (                      "os_version"                      ,                      "fourteen"                      );                      capability                      .                      AddAdditionalCapability                      (                      "browserstack.debug"                      ,                      "true"                      );                      capability                      .                      AddAdditionalCapability                      (                      "nativeWebTap"                      ,                      "true"                      );                      commuter                      =                      new                      IOSDriver                      <                      IWebElement                      >(                      new                      Uri                      (                      "https://YOUR_USERNAME:YOUR_ACCESS_KEY@hub-deject.browserstack.com/wd/hub/"                      ),                      adequacy                      );                      commuter                      .                      Navigate                      ().                      GoToUrl                      (                      "https://back up.staffbase.com/hc/en-u.s./article_attachments/360009197031/username.csv"                      );                      driver                      .                      Context                      =                      "NATIVE_APP"                      ;                      commuter                      .                      FindElement                      (                      Past                      .                      Proper noun                      (                      "Download"                      )).                      Click                      ();                      driver                      .                      Context                      =                      driver                      .                      Contexts                      [                      1                      ];                      driver                      .                      Navigate                      ().                      GoToUrl                      (                      "https://the-cyberspace.herokuapp.com/upload"                      );                      Thread                      .                      Sleep                      (                      10000                      );                      driver                      .                      FindElementById                      (                      "file-upload"                      ).                      Click                      ();                      driver                      .                      Context                      =                      "NATIVE_APP"                      ;                      driver                      .                      FindElement                      (                      Past                      .                      Proper noun                      (                      "Scan"                      )).                      Click                      ();                      driver                      .                      FindElement                      (                      By                      .                      Name                      (                      "Recents"                      )).                      Click                      ();                      IWebElement                      element                      =                      driver                      .                      FindElementByXPath                      (                      "//XCUIElementTypeCollectionView"                      );                      element                      .                      FindElements                      (                      By                      .                      XPath                      (                      "//XCUIElementTypeCell"                      ))[                      0                      ].                      Click                      ();                      driver                      .                      Context                      =                      driver                      .                      Contexts                      [                      1                      ];                      Panel                      .                      WriteLine                      (                      driver                      .                      Title                      );                      driver                      .                      FindElementById                      (                      "file-submit"                      ).                      Click                      ();                      driver                      .                      Quit                      ();                      }                      }                      }                                      
                                          <?php                      require                      'android_upload.php'                      ;                      class                      AppAutomateTest                      extends                      BrowserStackTest                      {                      public                      part                      sendkeys                      (                      $elem                      ,                      $keys                      )                      {                      $data                      =                      array                      (                      'value'                      =>                      str_split                      (                      $keys                      ),                      'text'                      =>                      $keys                      );                      $url                      =                      $this                      ->                      getSessionUrl                      ()                      ->                      descend                      (                      'element'                      )                      ->                      descend                      (                      $elem                      ->                      getId                      ())                      ->                      descend                      (                      'value'                      );                      $this                      ->                      getDriver                      ()                      ->                      coil                      (                      'POST'                      ,                      $url                      ,                      $data                      );                      }                      public                      function                      testNativeApplication                      ()                      {                      $this                      ->                      url                      (                      "https://support.staffbase.com/hc/en-us/article_attachments/360009197031/username.csv"                      );                      $this                      ->                      context                      (                      'NATIVE_APP'                      );                      $this                      ->                      byName                      (                      'Download'                      )                      ->                      click                      ();                      $contexts                      =                      $this                      ->                      contexts                      ();                      $this                      ->                      context                      (                      $contexts                      [                      ane                      ]);                      $this                      ->                      url                      (                      "https://the-internet.herokuapp.com/upload"                      );                      $this                      ->                      byId                      (                      'file-upload'                      )                      ->                      click                      ();                      $this                      ->                      context                      (                      'NATIVE_APP'                      );                      $this                      ->                      byName                      (                      'Browse'                      )                      ->                      click                      ();                      $this                      ->                      byName                      (                      'Recents'                      )                      ->                      click                      ();                      $this                      ->                      byXpath                      (                      "//XCUIElementTypeCollectionView"                      );                      $this                      ->                      elements                      (                      $this                      ->                      using                      (                      'xpath'                      )                      ->                      value                      (                      '//XCUIElementTypeCell'                      ))[                      0                      ]                      ->                      click                      ();                      $contexts                      =                      $this                      ->                      contexts                      ();                      $this                      ->                      context                      (                      $contexts                      [                      1                      ]);                      $this                      ->                      byId                      (                      "file-submit"                      )                      ->                      click                      ();                      }                      }                      ?>                                      
                                          from                      appium                      import                      webdriver                      from                      appium.webdriver.mutual.mobileby                      import                      MobileBy                      from                      selenium.webdriver.support.ui                      import                      WebDriverWait                      from                      selenium.webdriver.support                      import                      expected_conditions                      as                      EC                      from                      selenium.webdriver.common                      import                      action_chains                      ,                      keys                      from                      time                      import                      sleep                      from                      selenium.webdriver.common.past                      import                      By                      desired_cap                      =                      {                      "device"                      :                      "iPhone 12"                      ,                      "os_version"                      :                      "xiv"                      ,                      "real_mobile"                      :                      "truthful"                      ,                      "browserstack.debug"                      :                      "true"                      ,                      "nativeWebTap"                      :                      "truthful"                      }                      driver                      =                      webdriver                      .                      Remote                      (                      command_executor                      =                      'http://YOUR_USERNAME:YOUR_ACCESS_KEY@hub-cloud.browserstack.com/wd/hub'                      ,                      desired_capabilities                      =                      desired_cap                      )                      # download file                                            driver                      .                      get                      (                      "https://support.staffbase.com/hc/en-u.s.a./article_attachments/360009197031/username.csv"                      )                      # accept download                                            driver                      .                      switch_to                      .                      context                      (                      'NATIVE_APP'                      )                      commuter                      .                      find_element_by_name                      (                      'Download'                      ).                      click                      ()                      commuter                      .                      switch_to                      .                      context                      (                      driver                      .                      contexts                      [                      1                      ])                      # become to upload url                                            driver                      .                      get                      (                      "https://the-internet.herokuapp.com/upload"                      )                      sleep                      (                      10                      )                      driver                      .                      find_element_by_id                      (                      'file-upload'                      ).                      click                      ()                      driver                      .                      switch_to                      .                      context                      (                      'NATIVE_APP'                      )                      driver                      .                      find_element_by_name                      (                      'Browse'                      ).                      click                      ()                      driver                      .                      find_element_by_name                      (                      'Recents'                      ).                      click                      ()                      element                      =                      commuter                      .                      find_element_by_xpath                      (                      "//XCUIElementTypeCollectionView"                      )                      impress                      (                      type                      (                      element                      ))                      element                      .                      find_elements_by_xpath                      (                      "//XCUIElementTypeCell"                      )[                      0                      ].                      click                      ()                      driver                      .                      switch_to                      .                      context                      (                      driver                      .                      contexts                      [                      i                      ])                      driver                      .                      find_element_by_id                      (                      "file-submit"                      ).                      click                      ()                      driver                      .                      quit                      ()                                      
                                          require                      'rubygems'                      require                      'appium_lib'                      # Input capabilities                      caps                      =                      {}                      caps                      [                      'device'                      ]                      =                      'iPhone 12'                      caps                      [                      'os_version'                      ]                      =                      '14'                      caps                      [                      'platformName'                      ]                      =                      'iOS'                      caps                      [                      'realMobile'                      ]                      =                      'true'                      caps                      [                      'proper noun'                      ]                      =                      'BStack-[Blood-red] Sample Test'                      # test name                                            caps                      [                      'build'                      ]                      =                      'BStack Build Number ane'                      # CI/CD job or build name                      caps                      [                      'nativeWebTap'                      ]                      =                      'true'                      appium_driver                      =                      Appium                      ::                      Driver                      .                      new                      ({                      'caps'                      =>                      caps                      ,                      'appium_lib'                      =>                      {                      :server_url                      =>                      "https://YOUR_USERNAME:YOUR_ACCESS_KEY@hub-cloud.browserstack.com/wd/hub"                      }},                      true                      )                      driver                      =                      appium_driver                      .                      start_driver                      driver                      .                      navigate                      .                      to                      "https://support.staffbase.com/hc/en-us/article_attachments/360009197031/username.csv"                      commuter                      .                      set_context                      (                      'NATIVE_APP'                      )                      driver                      .                      find_element                      (                      xpath:                                            "//*[@name='Download']"                      ).                      click                      contexts                      =                      driver                      .                      available_contexts                      driver                      .                      set_context                      contexts                      [                      i                      ]                      driver                      .                      navigate                      .                      to                      "https://the-cyberspace.herokuapp.com/upload"                      sleep                      (                      5                      )                      driver                      .                      find_element                      (                      xpath:                                            "//*[@id='file-upload']"                      ).                      click                      driver                      .                      set_context                      (                      'NATIVE_APP'                      )                      sleep                      (                      10                      )                      driver                      .                      find_element                      (                      xpath:                                            "//*[@name='Scan']"                      ).                      click                      sleep                      (                      five                      )                      driver                      .                      find_element                      (                      xpath:                                            "//*[@proper name='Recents']"                      ).                      click                      element                      =                      driver                      .                      find_element                      (                      :xpath                      ,                      "//XCUIElementTypeCollectionView"                      )                      element                      .                      find_elements                      (                      xpath:                                            "//XCUIElementTypeCell"                      )[                      0                      ].                      click                      contexts                      =                      driver                      .                      available_contexts                      driver                      .                      set_context                      contexts                      [                      1                      ]                      commuter                      .                      find_element                      (                      :id                      ,                      "file-submit"                      ).                      click                      ()                      driver                      .                      quit                      ()                                      

We're pitiful to hear that. Delight share your feedback so nosotros can do amend

Contact our Back up team for immediate help while nosotros work on improving our docs.

Nosotros're continuously improving our docs. We'd love to know what you liked





Cheers for your valuable feedback

Is this page helping you?

Yes

No

We're lamentable to hear that. Delight share your feedback and so nosotros can do better

Contact our Support team for immediate help while we work on improving our docs.

Nosotros're continuously improving our docs. We'd honey to know what you lot liked





Thanks for your valuable feedback!

mcclemenshisherear97.blogspot.com

Source: https://www.browserstack.com/docs/automate/selenium/test-file-upload

0 Response to "Where to Upload a File to Browse on Safari"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel