title: Not able to setvalue to a form field in webdriverio Cucumber framework
body: <p>I am very new to webdriver io and cucumber framework.Tried my first test with login screen of an application. I am able to invoke the browser and website is loaded.But I when try to setvalue for the login field , it throws the following error and aborts </p>
  
  <p><strong>"Error in "Performing a login: Login with the default user: When I login with the default user"
  browser.$(...).setValue is not a function"</strong></p>
  
  <p>I tried to install sync package and set sync to true in config file.I could not get it to work . Please help !</p>
  
  <p>Here is my config file </p>
  
  <p>exports.config = {</p>
  
  <pre><code>//
  // ====================
  // Runner Configuration
  // ====================
  //
  // WebdriverIO allows it to run your tests in arbitrary locations (e.g. locally or
  // on a remote machine).
  runner: 'local',
  //
  path: '/wd/hub',
  
  specs: [
      './features/*.feature'
  ],
  // Patterns to exclude.
  exclude: [
      // 'path/to/excluded/files'
  ],
  //
  
  maxInstances: 10,
  
  capabilities: [{
  
      // maxInstances can get overwritten per capability. So if you have an in-house Selenium
      // grid with only 5 firefox instances available you can make sure that not more than
      // 5 instances get started at a time.
      maxInstances: 5,
      //
      browserName: 'firefox',
      // If outputDir is provided WebdriverIO can capture driver session logs
      // it is possible to configure which logTypes to include/exclude.
      // excludeDriverLogs: ['*'], // pass '*' to exclude all driver session logs
      // excludeDriverLogs: ['bugreport', 'server'],
  }],
  
  logLevel: 'info',
  sync:true,
  bail: 0,
  
  baseUrl: '********************',
  //
  // Default timeout for all waitFor* commands.
  waitforTimeout: 10000,
  //
  // Default timeout in milliseconds for request
  // if browser driver or grid doesn't send response
  connectionRetryTimeout: 90000,
  //
  // Default request retries count
  connectionRetryCount: 3,
  
  services: ['selenium-standalone'],
  
  
  framework: 'cucumber', 
  
  
  cucumberOpts: {
      requireModule: ['@babel/register'],// &lt;string[]&gt; ("extension:module") require files with the given EXTENSION after requiring MODULE (repeatable)
      require: ['./step-definitions/*.js'],       // &lt;string[]&gt; (file/dir) require files before executing features
  
      backtrace: false,   // &lt;boolean&gt; show full backtrace for errors
      dryRun: false,      // &lt;boolean&gt; invoke formatters without executing steps
      //compiler: ['js:babel-core/register'],
      failFast: false,    // &lt;boolean&gt; abort the run on first failure
      format: ['pretty'], // &lt;string[]&gt; (type[:path]) specify the output format, optionally supply PATH to redirect formatter output (repeatable)
      snippets: true,     // &lt;boolean&gt; hide step definition snippets for pending steps
      source: true,       // &lt;boolean&gt; hide source uris
      profile: [],        // &lt;string[]&gt; (name) specify the profile to use
      strict: false,      // &lt;boolean&gt; fail if there are any undefined or pending steps
      tagExpression: '',  // &lt;string&gt; (expression) only execute the features or scenarios with tags matching the expression
      timeout: 60000,     // &lt;number&gt; timeout for step definitions
      ignoreUndefinedDefinitions: false, // &lt;boolean&gt; Enable this config to treat undefined definitions as warnings.
  },
  </code></pre>