With ASP.NET the tag IDs are pretty volatile so to make my tests more robust I want to locate elements by their label texts. I have played some with WatiN and it does this perfectly but that project seem kind of dead nowadays so I thought I'd look into Selenium as well before I decide on a framework.
I have html that looks something like this
<label for="ctl00_content_loginForm_ctl01_username">Username</label>:
<input type="text" id="ctl00_content_loginForm_ctl01_username" />
I don't want to type:
selenium.Type("ctl00_content_loginForm_ctl01_username", "xxx");
That is too reliant on the ID. In WatiN I'd write:
browser.TextField(Find.ByLabelText("Username")).TypeText("xxx");
Is there a way to do this in Selenium?