Ситуация такая: при заходе на сайт требуется Basic Authorization, после прохода которой загружается страница с инпутами email и password и кнопка сабмит.
Basic Authorization прохожу используя
driver.navigate().to("https://user:pass@link");
Открывается страница с формой, но при попытке ввода данных через .sendKeys ничего не получается и IntelliJ IDEA выдает ошибку java.lang.NullPointerException
Не могу понять в чем ошибка.
         
        
           
         
            
       
      
        
          
          
            Valentin_G  
          
              
                06.Январь.2019 20:10:05
               
              #2 
           
         
        
          Было бы неплохо увидеть код теста, и собственно строку, на которой падает.
         
        
           1 лайк 
         
         
            
       
      
        
        
          Страница с формой
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
public class DmLoginPage {
    private WebDriver driver;
    public DmLoginPage(WebDriver driver) {
        this.driver = driver;
    }
    private By loginInput = By.xpath("//input[@id='login-login']");
    private By loginPass = By.xpath("//input[@id='login-password']");
    private By loginButton = By.xpath("//input[@id='login-submit']");
    public DmPage enterDM(String email, String pass){
        driver.findElement(loginInput).sendKeys(email);
        driver.findElement(loginPass).sendKeys(pass);
        driver.findElement(loginButton).click();
        return new DmPage(driver);
    }
}
Сам тест
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import java.util.concurrent.TimeUnit;
public class DmPageTest {
    private WebDriver driver;
    private DmLoginPage dmLoginPage;
    private DmPage dmPage;
    @Before
    public void setUp() throws Exception {
        System.setProperty("webdriver.chrome.driver", "D:\\vlada\\automate\\p2h_unit_tests\\drivers\\chromedriver.exe");
        driver = new ChromeDriver();
        driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
        driver.navigate().to("https://xx:pass@devmarkup.com/dev-login.html");
      
    }
    @Test
    public void searchTask() {
        dmLoginPage.enterDM("test-manager@p2h.com", "PJAsEQCF");
        dmPage.enterTaskNum("190104441247");
        dmPage.searchTask();
        dmPage.enterProject();
    }
 
        
           
         
            
       
      
        
          
          
            Valentin_G  
          
              
                06.Январь.2019 20:18:19
               
              #4 
           
         
        
          Как и говорил, где у вас инициализируются данные PageObjects:?
private DmLoginPage dmLoginPage;
private DmPage dmPage;
Инициизируйте их либо в Setup методе, если они будут использоваться в нескольких тестах, либо в начале данного теста.
         
        
           3 лайка