Subir archivo a entrada oculta usando transportador y selenio

Tengo un campo de entrada de archivo oculto como este:

<input type="file" id="fileToUpload-1827" multiple="" onchange="angular.element(this).scope().setFiles(this)" data-upload-id="1827" class="hidden-uploader">

Me gustaría poder subir archivos a esto. La forma normal de hacer esto en transportador sería hacer:

ptor.findElement(protractor.By.css('.file-upload-form input')).sendKeys('/path/to/file')

Pero debido a que el elemento de entrada no es visible, obtengo un error.

Lo intenté:

  ptor.driver.executeScript("return $('.file-upload-form input')[0].removeClass('hidden-uploader');").then(function () {
    ptor.findElement(protractor.By.css('.file-upload-form input')).sendKeys('hello');
  })

Pero tengo el error

UnknownError: $(...)[0].removeClass is not a function

Parece ridículo tener que usarexecuteScript para hacer visible un elemento para que pueda cargar un archivo, ¿hay una mejor manera? Si no, ¿cómo puedo mostrar el elemento?

El llenohtml para el formulario de entrada es:

<form class="file-upload-form ng-scope ng-pristine ng-valid" ng-if="ajaxUploadSupported">
<strong>Drag files here to upload</strong> or

<label for="fileToUpload-1953">
  <div class="btn btn-info select-file-btn">
    Click to Select
  </div>
</label>

<div>
      <input type="file" id="fileToUpload-1953" multiple="" onchange="angular.element(this).scope().setFiles(this)" data-upload-id="1953" class="hidden-uploader">
</div>
</form>

Respuestas a la pregunta(2)

Su respuesta a la pregunta