Selenium: submit () funciona bien, pero click () no

Tengo el botón Enviar, que es solo uno en la página, y está en forma.

parte html:

<form class="search-form ng-touched ng-dirty ng-valid" novalidate="" style="" xpath="1">

<div class="row">...</div>
<div class="row">...</div>
<div class="row">...</div>
<div class="form__actions" xpath="1">
    <div class="form__buttons">
      <!---->
      <div class="btn__wrapper">
        <button class="btn btn__primary" type="submit">
          Select My Car
        </button>
      </div>
    </div>
  </div>

</form>

Entonces, estoy tomando xpath:

//button[@type='submit']

Lo presiono con éxito a través de submit () (déjame omitir el inicio de WebDriver, está bien):

  WebElement searchButton = driver.findElement(By.xpath("//button[@type='submit']"));
  searchButton.submit();

(y se realiza alguna búsqueda)

Pero cuando trato de presionarlo haciendo clic ()

WebElement searchButton = driver.findElement(By.xpath("//button[@type='submit']"));
        searchButton.click();

no se presiona en el navegador que se inicia, y al mismo tiempo, la prueba Junit es verde (no prueba, solo presiona el botón):

@Test
    public void test() {
        WebElement button = driver.findElement(By.xpath("//button[@type='submit']"));
        button.click();
    }

Puede alguien explicar, por qué submit () presiona exitosamente el botón en tal caso, pero haga clic en () - no. Y no entiendo, por qué "prueba" es verde, cuando estamos tratando de hacer clic (), pero no se realizó, si se busca en el navegador iniciado por el controlador.

ACTUALIZADO: Lo intenté

WebElement button = driver.findElement(By.xpath("//button[@type='submit']"));
        if (button.isEnabled()) {
            button.click();
        }

y

WebDriverWait wait = new WebDriverWait(driver, 10);
        wait.until(ExpectedConditions.elementToBeClickable(button)).click();

pero sigue siendo el mismo: submit () funciona bien, click (), no.

Respuestas a la pregunta(4)

Su respuesta a la pregunta