Skip to content

Instantly share code, notes, and snippets.

@testautomationtribe
Created November 25, 2017 08:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save testautomationtribe/ead18386bb520dbb4e1bdf0d225b4625 to your computer and use it in GitHub Desktop.
Save testautomationtribe/ead18386bb520dbb4e1bdf0d225b4625 to your computer and use it in GitHub Desktop.
unsucessful implementation
using OpenQA.Selenium;
using OpenQA.Selenium.Support.PageObjects;
namespace TatAuto.Pages
{
public class LoginPObject
{
[FindsBy(How = How.Id, Using = "user_login")]
protected IWebElement UsernameTxtBox { get; set; }
[FindsBy(How = How.Id, Using = "user_pass")]
protected IWebElement PasswordTxtBox { get; set; }
[FindsBy(How = How.Id, Using = "wp-submit")]
protected IWebElement LoginBtn { get; set; }
[FindsBy(How = How.Id, Using = "login_error")]
protected IWebElement ErrorText { get; set; }
private readonly IWebDriver _driver;
public LoginPObject(IWebDriver driver)
{
_driver = driver;
PageFactory.InitElements(_driver, this);
}
public DashboardPObject LoginAs(string username, string password)
{
Login(username, password);
return new DashboardPObject(_driver);
}
public LoginPObject LoginUnsuccessfullyAs(string username, string password)
{
Login(username, password);
return this;
}
public string GetErrorMessage()
{
return ErrorText.Text;
}
private void Login(string username, string password)
{
UsernameTxtBox.SendKeys(username);
PasswordTxtBox.SendKeys(password);
LoginBtn.Click();
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment