So here's the HTML in question
<div>
<div class="row px-4 mb-4">
<div class="col-12">
<div class="text-center">
*** This area is available to the review team only ***
</div>
</div>
</div>
<div class="row">
<div class="col-12 col-md-2 pt-4">
<div class="form-check">
<label class="form-check-label">
<input class="form-check-input" type="radio" name="score" value="1" v-model="score">
Met
</label>
</div>
<div class="form-check">
<label class="form-check-label">
<input class="form-check-input" type="radio" name="score" value="0" v-model="score">
Not Met
</label>
</div>
</div>
</div>
</div>
I'm just trying to click the first radio element.
$browser->radio('score', 1)
->press('Save')
->waitUntilMissing('@loading');
It's doing this to about 20 pages. It fails with the following error, but not always on the same page. Sometimes it's the first, sometimes, the fifth, etc...
1) Tests\Browser\CompleteReviewTest::can_complete_form
Facebook\WebDriver\Exception\ElementClickInterceptedException: element click intercepted: Element <input type="radio" name="score" value="1" class="form-check-input"> is not clickable at point (424, 1073). Other element would receive the click: <div>...</div>
(Session info: headless chrome=92.0.4515.159)
So that top level empty <div> tag is receiving the click. I need it there since I am using vuejs and this component needs a single <div> tag, but somehow it's capturing the explicit radio click. And it's extra annoying because it doesn't consistently fail in the same place.