Hello, I'm struggling with a problem that doesn't make sense to me.
I'm writing some tests (I'm totally new to the testing framework), the first of which consists on login to the site.
So I'm doing this:
myManager.ActiveBrowser.NavigateTo(site.LoginURL);
myManager.ActiveBrowser.WaitUntilReady();
Thread.Sleep(5000);
//Find username control
HtmlInputText usernameControl = myManager.ActiveBrowser.Find.ById<HtmlInputText>("email");
usernameControl.MouseClick();
myManager.Desktop.KeyBoard.TypeText(site.DefaultUser.Username);
//Find password control
HtmlInputPassword passwordControl = myManager.ActiveBrowser.Find.ById<HtmlInputPassword>("password");
passwordControl.MouseClick();
myManager.Desktop.KeyBoard.TypeText(site.DefaultUser.Password);
Element loginBtn = myManager.ActiveBrowser.Find.ById("loginBtn");
myManager.ActiveBrowser.Actions.Click(loginBtn);
I had to use html elements for the imput boxes because the site is made using ember.js and looks like it requires "real typing".
The problem is that if I run this against a local testing site it works perfectly. However if I try to run it against a site (an identical copy) on a remote server, the framework can't find the controls and I get a null reference exception because the object "usernameControl" is null.
I can warranty that the site hosted on the remote server contains those controls, and that's why this doesn't make sense to me.
Am I missing something? Any help will be appreciated.
Thanks in advance,
Gonzalo