New issue
Advanced search Search tips

Issue 894712 link

Starred by 1 user

Issue metadata

Status: Unconfirmed
Owner: ----
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocking:
issue 705916



Sign in to add a comment

"'Input.insertText' wasn't found " when typing Japanase characters

Reported by kenmas...@gmail.com, Oct 12

Issue description


Chrome Version       : 69.0.3497.81(Official Build)(64Bit)
URLs (if applicable) : N/A
OS                   : MacPro El Capitan 10.11.6
Node.js              : 8.11.2
npm                  : 5.6.0
Other browsers tested: N/A


What steps will reproduce the problem?
Using puppeteer(https://github.com/GoogleChrome/puppeteer) as framework for automation.
`input` command fails on Japanses characters

```
		await page.waitFor('input.selector');
    await page.focus('input.selector');
    await page.type('input.selector', 'あいうえお'); <<<<<<
```

What is the expected result?
Expected to type Japanese character(s)

What happens instead?
Failed to type Japanese character(s)


Stacktrace........

```
(node:8365) UnhandledPromiseRejectionWarning: Error: Protocol error (Input.insertText): 'Input.insertText' wasn't found
    at Promise (/Users/uu091430/project/jbg-ga/app/node_modules/puppeteer/lib/Connection.js:203:56)
    at new Promise (<anonymous>)
    at CDPSession.send (/Users/uu091430/project/jbg-ga/app/node_modules/puppeteer/lib/Connection.js:202:12)
    at Keyboard.sendCharacter (/Users/uu091430/project/jbg-ga/app/node_modules/puppeteer/lib/Input.js:151:24)
    at Keyboard.type (/Users/uu091430/project/jbg-ga/app/node_modules/puppeteer/lib/Input.js:166:20)
    at ElementHandle.type (/Users/uu091430/project/jbg-ga/app/node_modules/puppeteer/lib/ExecutionContext.js:413:31)
    at <anonymous>
  writeOut
  output
  process.on
  emitOne
  emit
  (anonymous function)
  _combinedTickCallback
  _tickCallback
(node:8365) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
  writeOut
  output
  process.on
  emitOne
  emit
  (anonymous function)
  _combinedTickCallback
  _tickCallback
(node:8365) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
  writeOut
  output
  process.on
  emitOne
  emit
  (anonymous function)
  _combinedTickCallback
  _tickCallback

  ````

 
Input.insertText is an experimental command [1] that's not available in the stable version 1.3 of DevTools protocol [2]:

  [1]: https://chromedevtools.github.io/devtools-protocol/tot/Input#method-insertText
  [2]: https://chromedevtools.github.io/devtools-protocol/1-3/Input

Not sure why Puppeteer uses it with Chrome 69, but I guess it might work if you switch to Chrome Canary.
Thanks woxxom

That clears things up.

Unfortunately it is not very easy for me to change browser(even chrome version) as the project is on production now and I have to ask the client for that.

Anyways, I also added an issue on puppeteer.

Thanks again
Can we please close this issue?

Sign in to add a comment