Я новичок в автоматизации пользовательского интерфейса Selen, и я пытаюсь освоить простое приложение. Я использую Java с testNG. Мне нужно интегрировать этот тест с CI, и URL-адрес среды тестирования будет отличаться при каждом развертывании. Я передаю это как параметр, разница между средой test и prod заключается в том, что в тесте не будет никакого экрана входа в систему, поэтому нет необходимости в аутентификации, но мой тест проверяет вход в систему и метод входа в систему. Мне нужно пропустить этот тест на основе предоставленного URL. Вот мой код, и проблема заключается в том, что testNG всегда предполагает, что тест был пропущен, но я вижу, что он выполняет метод входа в систему. Пожалуйста, помогите мне исправить или понять, какую ошибку я совершаю.
public class Login {
WebDriver driver;
//Parameter - test environment URL
String url = System.getProperty("environment");
@Test (priority = 1)
public void verifyLogin() {
//Skip verifyLogin test in non prod environments
System.setProperty("webdriver.chrome.driver", "C://chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.manage().window().maximize();
driver.get(url);
if (url=="www.google.com")
//If url matches production url then execute the test, if url doesn't match production URL then skip login test as there won't be any authentication/login in non prod
{
LoginPage login = new LoginPage(driver);
login.signIn();
Assert.assertEquals(driver.getTitle(), "Application Name", "Login failed,");
String title = driver.getTitle();
System.out.println("Page title is " + title);
driver.close();
}
else if (url!="www.google.com"){
throw new SkipException("Skipping this test");
}
}
@Test(priority = 2)
public void userKey() {
System.setProperty("webdriver.chrome.driver", "C://chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.manage().window().maximize();
driver.get(url);
//If URL equals prod then call the login method to be able to login to the app else just execute the userKey method without having the need to login
if (url=="www.google.com");
{
LoginPage login = new LoginPage(driver);
login.signIn();
}
AccountManagementPage userKey = new AccountManagementPage(driver);
userKey.key();
driver.close();
}
}