Thank you for the reply, I'm already using the test as step function for my login details, but I assumed this was only ever hit once, which is mentioned here.
So my understanding was that if a step fails, it would only 'restart' from the top of the data sourced step, so login would never be hit again after it had been hit once?
I have since added an if statement at the top to discover if the page is not where it is supposed to be: if so log out and in again. this has solved most of my issues but I would still be very interested in my question above.
Also as a side note is there anyway to do a IF statement without an ELSE? it just seems that there may be times I would want to say:
if an error message appears > click close
with no else section needed.