Javascript can';如果文件不存在,则使用selenium(js)将密钥发送到文件表单字段

Javascript can';如果文件不存在,则使用selenium(js)将密钥发送到文件表单字段,javascript,selenium,selenium-webdriver,selenium-chromedriver,Javascript,Selenium,Selenium Webdriver,Selenium Chromedriver,当我试图在表单中填写一个上传文件的字段时,如果文件存在,它可以正常工作,但是如果文件不存在,它就会被拒绝 const driver = await new webdriver.Builder().forBrowser('chrome').setLoggingPrefs({ browser: 'ALL', }).build(); await driver.executeScript(`document.write('<input type="file" id="testfile" nam

当我试图在表单中填写一个上传文件的字段时,如果文件存在,它可以正常工作,但是如果文件不存在,它就会被拒绝

const driver = await new webdriver.Builder().forBrowser('chrome').setLoggingPrefs({
  browser: 'ALL',
}).build();
await driver.executeScript(`document.write('<input type="file" id="testfile" name="testfile">');`);
await driver.findElement(By.id('testfile')).sendKeys('/does/not/exist');
const driver=wait new webdriver.Builder().forBrowser('chrome')。setLoggingPrefs({
浏览器:“全部”,
}).build();
等待driver.executeScript(`document.write(''');`);
wait driver.findElement(By.id('testfile')).sendKeys('/dods/not/exist');
我得到这个错误:

WebDriverError: invalid argument: File not found : /does/not/exist
  (Session info: chrome=70.0.3538.67)
  (Driver info: chromedriver=2.42.591071 (0b695ff80972cc1a65a5cd643186d2ae582cd4ac),platform=Linux 4.15.0-36-generic x86_64)
    at Object.checkLegacyResponse ([project]/node_modules/selenium-webdriver/lib/error.js:585:15)
    at parseHttpResponse ([project]/node_modules/selenium-webdriver/lib/http.js:533:13)
    at Executor.execute ([project]/node_modules/selenium-webdriver/lib/http.js:468:26)
    at <anonymous>
    at process._tickCallback (internal/process/next_tick.js:188:7)
WebDriverError:无效参数:找不到文件:/does/not/exist
(会话信息:chrome=70.0.3538.67)
(驱动程序信息:chromedriver=2.42.591071(0b695ff80972cc1a65a5cd643186d2ae582cd4ac),平台=Linux 4.15.0-36-generic x86_64)
在Object.checkLegacyResponse([project]/node_modules/selenium webdriver/lib/error.js:585:15)
在parseHttpResponse([project]/node_modules/selenium webdriver/lib/http.js:533:13)
在Executor.execute([project]/node_modules/selenium webdriver/lib/http.js:468:26)
在
在进程中。_tick回调(内部/process/next_tick.js:188:7)
但我不知道它在哪里检查文件是否存在。这是浏览器在您将内容放入该字段时执行的检查,还是selenium库配置为执行的检查?还是执行检查的是
chromedriver

我有没有办法说服它接受我不存在的文件名?我正在使用远程selenium进行测试,因此无法始终使文件存在。我不需要提交表格,只要填好就行了

(使用
document.write创建表单字段只是为了隔离问题)