This is a basic example using java, should be able to use a simulair solution in php I guess.
TabOrderElements.class{
public WebElement element1 = driver.findElement(By.id(""));
public WebElement element2 = driver.findElement(By.id(""));
public WebElement element3 = driver.findElement(By.id(""));
public WebElement element4 = driver.findElement(By.id(""));
public WebElement element5 = driver.findElement(By.id(""));
}
public void validateTabOrder(){
TabOrderElements tabOrderElements = new TabOrderElements();
public String[] tabOrder = {
"element1",
"element2",
"element3",
"element4",
"element5"
};
for (String currentField: tabOrder ){
WebElement expected = (WebElement)elements.getClass().getField(currentField).get(tabOrderElements );
WebElement actual = driver.switchTo().activeElement();
String assertMessage = "Incorrect tab order when trying to tab to: "+fieldName;
Assert.assertEquals(assertMessage, expected, actual);
driver.switchTo().activeElement().sendKeys(Keys.TAB);
}
}