В одном из проектов столкнулся с проблемой, файл загружаеться, но его размер 0.
Инпут стандартный, даже пробовали верстать пустую страницу и там вставляли инпут, результат все тот же =(
Пример Инпута:
<body>
<input id="upload" name="upload" type="file" data-qa="qa-upload-input" onchange="upload(this.files)">
<script>
function upload(files) {
console.log("ON UPLOAD");
console.log("File size: ", files[0].size);
}
</script>
${analytics ? renderGoogleTagManagerFrame() : ''}
${spriteHtml}
${body}
${renderScripts(scripts)}
</body>
</html>
Пример реализации загрузки файла:
self.driver.find_element_by_css_selector("[data-qa='qa-upload-input']").send_keys("/home/user_name/workspace/project/test_selenium/test_files/Key-6.dat")
Кроме этого проекта, есть еще 2 и там такая реализация работает…
Не могу понять что именно не так.
Есть предположение, что файл 0 размера, потому что он грузится в браузер, а не записываться в базу или еще куда-то, но это предположение.
Пробовал менял локаторы, Инпуты свои верстать, даже такое http://joxi.ru/gmvRNGYfLgn0gm.jpg
Если у кого будут идеи и предложения, буду очень рад, а то сейчас зашел в тупик.
Кстати, если загружать руками через эту форму - файл грузится корректно. Знаю про AutoIt Scripting Language - AutoIt
Но хотелось без нее обойтись.
Спасибо за внимание.