title: parameter is required by @ Test but has not been marked @optional or defined
body: <p>Hi I am seeing this error, please help</p>
  
  <p>Parameter &apos;Visit&apos; is required by @Test on method searchByVisitNo but has not been marked @Optional or defined.</p>
  
  <p>I don't know why is there a need to mark it optional when it is defined in testng xml file</p>
  
  <p>Here is the entire code I used</p>
  
  <pre><code>&lt;suite name="Suite" parallel="tests"&gt;
      &lt;test name="SearchByVisit"&gt;
          &lt;parameter name="Visit" value="123456"/&gt;
          &lt;classes&gt;
              &lt;class name="abc"/&gt;
          &lt;/classes&gt;
      &lt;/test&gt;
  &lt;/suite&gt;
  
  @Parameters({"Visit"})
  @Test(priority=3)
  public void searchByVisitNo(String VisitNumber)throws InterruptedException
  {
      searchByVisit(VisitNumber);
  }
  
  public void searchByVisit(String Visit) throws InterruptedException
  {
      WebDriverWait wait = new WebDriverWait(driver, 20);
      WebElement element = wait.until(
          ExpectedConditions.visibilityOfElementLocated(By.id("search-input"))
      );
      element.sendKeys(Visit);
      clickSearch();
  }
  </code></pre>