title: Undefined step reference in PhpStorm when using Codeception and Gherkin
body: <p>I'd like to be able to use PhpStorm's "Go To Declaration" feature (<em>Command + B</em> on a Mac) in Gherkin feature files when using Codeception. However, PhpStorm doesn't seem to figure out where the steps are defined, and outputs this warning:</p>
  
  <blockquote>
    <p>Undefined step reference: […] <img src="https://i.stack.imgur.com/1k0pQ.png" alt="Warning screenshot"></p>
  </blockquote>
  
  <p>When I'm using Behat, PhpStorm understands where the steps are defined.</p>
  
  <h1>Steps to reproduce</h1>
  
  <ol>
  <li><code>mkdir codeception</code></li>
  <li><code>cd codeception</code></li>
  <li><code>composer require "codeception/codeception" --dev</code></li>
  <li><code>./vendor/bin/codecept bootstrap</code></li>
  <li><code>./vendor/bin/codecept generate:feature acceptance first</code></li>
  <li>Open the project directory in PhpStorm.</li>
  <li>Make sure that PhpStorm knows that Codeception is installed: <a href="https://i.stack.imgur.com/QcYaN.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/QcYaN.png" alt="Codeception PhpStorm configuration"></a></li>
  <li>Make sure that the PhpStorm plugins <em>Gherkin</em> and <em>Codeception Framework</em> are installed.</li>
  <li>Add a step to <code>tests/acceptance/first.feature</code>.</li>
  <li><code>./vendor/bin/codecept gherkin:snippets acceptance</code></li>
  </ol>
  
  <p>This results in the following code. (Not everything is included – let me know if I need to add anything.)</p>
  
  <p><code>tests/acceptance/first.feature</code>:</p>
  
  <pre><code>Feature: first
    In order to ...
    As a ...
    I need to ...
  
    Scenario: try first
      When I visit "/"
  </code></pre>
  
  <p><code>tests/_support/AcceptanceTester.php</code>:</p>
  
  <pre><code>&lt;?php
  
  /**
   * Inherited Methods
   * @method void wantToTest($text)
   * @method void wantTo($text)
   * @method void execute($callable)
   * @method void expectTo($prediction)
   * @method void expect($prediction)
   * @method void amGoingTo($argumentation)
   * @method void am($role)
   * @method void lookForwardTo($achieveValue)
   * @method void comment($description)
   * @method \Codeception\Lib\Friend haveFriend($name, $actorClass = NULL)
   *
   * @SuppressWarnings(PHPMD)
  */
  class AcceptanceTester extends \Codeception\Actor
  {
      use _generated\AcceptanceTesterActions;
  
     /**
      * Define custom actions here
      */
  
      /**
       * @When I visit :arg1
       */
      public function iVisit($arg1)
      {
          throw new \Codeception\Exception\Incomplete("Step `I visit :arg1` is not defined");
      }
  }
  </code></pre>
  
  <p>However, PhpStorm doesn't know where <code>iVisit()</code> is. How can I fix this?</p>