<?php use Behat\MinkExtension\Context\MinkContext; class BaseContext extends MinkContext { /** * @param $closure * @param int $tries * @return mixed * @throws Exception */ public function spins($closure, $tries = 40) { for ($i = 0; $i <= $tries; $i++) { try { $closureResult = $closure(); return $closureResult; } catch (Exception $e) { if ($i == $tries) { throw $e; } } usleep(250000); } } public function sampleSpinsUsage() { $this->spins(function () { //do something... }); } } }