Я новичок в области автоматизации тестирования и пытаюсь внедрить страницу входа в мой проект в селене.Здесь у меня вопрос, что я хочу, чтобы подтвердить, что требуется имя пользователя, а затем я хочу, чтобы подтвердить пароль требуется.Он принимает пароль и войдите на страницу.При первом вызове метода это вводит данные в поле пароля, затем я очищаю его, но когда поле вводит данные в поле имени пользователя, а затем нажимает кнопку входа, но я не знаю, войдет ли он в систему.Кстати имя пользователя и пароль действительны.Это не очистить поле пароля.
Вот мой код:
import java.util.concurrent.TimeUnit;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.Assert;
public class Login {
WebDriver driver;
WebElement username;
WebElement password ;
WebElement log;
public void invokeBrowser() {
try {
System.setProperty("webdriver.gecko.driver", "C:\\Users\\dev3\\Desktop\\geckodriver-v0.25.0-win64\\geckodriver.exe");
driver = new FirefoxDriver();
driver.manage().deleteAllCookies();
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);
driver.get("https://192.168.1.11:9000/#/");
username = driver.findElement(By.cssSelector("body > app-root > ng-component > div > div > div > div.card-block > form > div:nth-child(2) > input"));
password = driver.findElement(By.cssSelector("body > app-root > ng-component > div > div > div > div.card-block > form > div:nth-child(3) > input"));
log = driver.findElement(By.cssSelector("body > app-root > ng-component > div > div > div > div.card-block > form > div:nth-child(5) > button"));
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void emptyUser() {
try {
username.sendKeys("");
password.sendKeys("123456");
log.click();
String actual_error = driver.findElement(By.xpath("/html/body/app-root/ng-component/div/div/div/div[2]/form/div[2]/div/div")).getAttribute("innerHTML");
String expected_error= "Username is required";
Assert.assertEquals(actual_error,expected_error);
System.out.println("Error!! Username is required");
driver.manage().deleteAllCookies();
driver.findElement(By.xpath("/html/body/app-root/ng-component/div/div/div/div[2]/form/div[3]/input")).clear();
driver.findElement(By.xpath("/html/body/app-root/ng-component/div/div/div/div[2]/form/div[3]/input")).sendKeys("");
Thread.sleep(3000);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void emptyPassword() {
try {
//invokeBrowser();
//driver.manage().deleteAllCookies();
//Thread.sleep(3000);
username.sendKeys("pravin");
password.sendKeys("");
log.click();
String actual_error = driver.findElement(By.xpath("/html/body/app-root/ng-component/div/div/div/div[2]/form/div[3]/div/div")).getAttribute("innerHTML");
String expected_error = "Password is required";
Assert.assertEquals(actual_error, expected_error);
System.out.println("Error!! Password is required");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) {
Login lnj = new Login();
lnj.invokeBrowser();
lnj.emptyUser();
//lnj.driver.quit();
lnj.driver.findElement(By.xpath("/html/body/app-root/ng-component/div/div/div/div[2]/form/div[2]/input")).clear();
lnj.driver.findElement(By.xpath("/html/body/app-root/ng-component/div/div/div/div[2]/form/div[2]/input")).sendKeys("");
lnj.driver.findElement(By.xpath("/html/body/app-root/ng-component/div/div/div/div[2]/form/div[3]/input")).clear();
lnj.driver.findElement(By.xpath("/html/body/app-root/ng-component/div/div/div/div[2]/form/div[3]/input")).sendKeys("");
lnj.driver.manage().deleteAllCookies();
lnj.emptyPassword();
// lnj.driver.quit();
}
}