簡體   English   中英

我想在設置方法中使用 selenium 執行多用戶登錄操作我沒有使用 testng.xml 我只使用 maven pom.xml

[英]I want to perform multiple user login action using selenium in set up method I am not using testng.xml I am using maven pom.xml only

這是我僅針對一種類型的用戶登錄嘗試過的代碼

@BeforeMethod
    public void setUp(){

        log.info("Setting up test");
        prop = new Properties();
        prop.load(new FileInputStream(new File(loginFile)));

        verificationErrors = new StringBuffer();
log.info("Running Firefox Driver");

        System.setProperty("webdriver.gecko.driver", GECKO_DRIVER_PATH);
 driver.manage().deleteAllCookies();
        baseUrl = getSeleniumTarget();
        driver.manage().timeouts().implicitlyWait(45, TimeUnit.SECONDS);
        driver.manage().timeouts().pageLoadTimeout(80, TimeUnit.SECONDS);
        driver.manage().window().setPosition(new Point(0, 0));
        driver.manage().window().maximize();

        WebDriverThreadLocal.setWebDriver(driver);

        login("manageuser");
}

protected void login(String username) {
        LoginPage page = PageFactory.initElements(driver, LoginPage.class);

        log.info("Loging in");
        driver.get(baseUrl + prop.getProperty("login.customerportal"));
        page.setUsername(prop.getProperty(username + ".username"));
        page.setPassword(prop.getProperty(username + ".password"));
        page.clickLoginButton();

如果我想在設置方法中使用多種類型的用戶登錄,是否有可能,如果是,如何?

如果我想在設置方法中使用員工登錄,我該怎么做?

您需要實例化多個WebDriver實例並為每個實例重復所有配置代碼。 因此,為不同的驅動程序調用登錄步驟,您將模擬多個用戶登錄。

您可能有一個List<WebDriver> drivers而不是您定義驅動程序的WebDriver driver程序。

您還可以使用login(WebDriver driver, String username)並執行以下操作:

for(WebDriver driver: drivers){
    login(driver, userNameThatYouHaveTakenFromSomewhere)
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM