import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.support.ui.ExpectedConditions; import org.openqa.selenium.support.ui.WebDriverWait; public class AutomationCodeGenerator { public WebDriver fillFieldsOnOppCreatePage(WebDriver driver, String path, Logger logger, String oppName, String crID, String closeDt, String sellingCountryval, String localCurrencyVal, String IndustrySubSegmentValue) { // Data Preparation // Get input data from Excel // Implement the logic for filling fields on the "Create Opportunity" page based on the pseudo code provided // Step 1: Fill Opportunity Name WebElement opportunityNameField = new WebDriverWait(driver, 10).until(ExpectedConditions.visibilityOfElementLocated(By.id("opportunityName"))); opportunityNameField.sendKeys(oppName); // Step 2: Fill Customer Relationship WebElement customerRelationshipField = new WebDriverWait(driver, 10).until(ExpectedConditions.visibilityOfElementLocated(By.id("customerRelationship"))); customerRelationshipField.sendKeys(crID); customerRelationshipField.sendKeys(Keys.RETURN); // Trigger autocomplete or dropdown selection new WebDriverWait(driver, 10).until(ExpectedConditions.elementToBeSelected(By.cssSelector("option[value='" + crID + "']"))); // Step 3: Fill Close Date WebElement closeDateField = new WebDriverWait(driver, 10).until(ExpectedConditions.visibilityOfElementLocated(By.id("closeDate"))); closeDateField.sendKeys(closeDt); // Step 4: Select Selling Country ((JavascriptExecutor) driver).executeScript("document.querySelector('#sellingCountry').click();"); new WebDriverWait(driver, 10).until(ExpectedConditions.presenceOfElementLocated(By.cssSelector("option[value='" + sellingCountryval + "']"))).click(); // Step 5: Select Local Currency ((JavascriptExecutor) driver).executeScript("document.querySelector('#localCurrency').click();"); new WebDriverWait(driver, 10).until(ExpectedConditions.presenceOfElementLocated(By.cssSelector("option[value='" + localCurrencyVal + "']"))).click(); // Step 6: Select Industry Sub Segment ((JavascriptExecutor) driver).executeScript("document.querySelector('#industrySubSegment').click();"); new WebDriverWait(driver, 10).until(ExpectedConditions.presenceOfElementLocated(By.cssSelector("option[value='" + IndustrySubSegmentValue + "']"))).click(); // Return modified WebDriver instance return driver; } }