"object reference not set to an instance of an object" error when running test method

Viewed 11

when running the below code of my test method(using Page Object Model for implementation), it is throwing error. All 3 pages codes given below. Please help

`public class Login_Page { [FindsBy(How = How.XPath, Using = "/html/body/form/table/tbody/tr[5]/td[2]/input")] public IWebElement Emailid { get; set; }

    [FindsBy(How= How.Name, Using = "btnLogin")]
    public IWebElement LoginBtn { get; set; }

    [FindsBy(How = How.XPath, Using = "/html/body/div[1]/div[2]/nav/div/div/ul/li[5]/a")]
    public IWebElement BankProjectLink { get; set; }

    [FindsBy(How = How.Name, Using = "uid")]
    public IWebElement Username { get; set; }

    [FindsBy(How = How.Name, Using = "password")]
    public IWebElement Password { get; set; }

    [FindsBy(How = How.Name, Using = "btnLogin")]
    public IWebElement BankLoginBtn { get; set; }
}`

`namespace Sel_Advance_PageObjectModel.Setup { [TestFixture] public class BaseTest { protected IWebDriver driver= new ChromeDriver(); protected String Url = "http://links.giveawayoftheday.com/demo.guru99.com/";

    [OneTimeSetUp]
    public void OneTimeSetUpMethod()
    {
        driver = new ChromeDriver();
        driver.Navigate().GoToUrl(Url);
    }

    [OneTimeTearDown]
    public void TearDownMethod()
    {
        driver.Close();
    }
}`
enter code herenamespace Sel_Advance_PageObjectModel.Testcases

{ [TestFixture] public class LoginFunctionalityTest :BaseTest {

    [Test, Order(1)]
    public void LoginMethod()
    {
        Login_Page loginpage = new Login_Page();
        PageFactory.InitElements(driver, loginpage);
        driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromMilliseconds(20);
        loginpage.Emailid.SendKeys("abc@gmail.com");
        loginpage.LoginBtn.Click();

        loginpage.BankProjectLink.Click();
    }
}

}

0 Answers
Related