繁体   English   中英

如何从一个类调用屏幕截图方法到另一个类?如何在导航到我的代码后截取主页?

[英]How to call screenshot method from one class to other class?How to take screenshot of home page after navigating in to my code?

如何从一个类调用屏幕截图方法到另一个类? 登录我的代码后如何截取主页截图?

以下是课程:-

属性类:

package basepackage;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;

import org.openqa.selenium.OutputType;
import org.openqa.selenium.TakesScreenshot;
import org.openqa.selenium.interactions.Actions;
import org.openqa.selenium.io.FileHandler;

public class PropertiesClass extends BaseClass {

    public static String propfile(String username) throws IOException {
        Properties prop = new Properties();
        FileInputStream fis = new FileInputStream("C:\\Users\\pushk\\eclipse-workspace\\com.org.swag\\config.prop");
        prop.load(fis);
        return prop.getProperty(username);

    }

    public static void loginscreenshot() throws Exception {
        File file = ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE);
        FileHandler.copy(file, new File("C:\\Users\\pushk\\eclipse-workspace\\com.org.swag\\Screenshots.png"));

    }

登录页面类:

package com.org.swag.Page;

import org.openqa.selenium.support.PageFactory;
import com.org.swag.pageobject.LoginPageObjects;
import basepackage.BaseClass;
import basepackage.PropertiesClass;

public class LoginPage extends BaseClass {
    public void loginpage() throws Exception {
        LoginPageObjects lpo = PageFactory.initElements(driver, LoginPageObjects.class);
        lpo.username.sendKeys(PropertiesClass.propfile("username"));
        lpo.password.sendKeys(PropertiesClass.propfile("password"));
        lpo.loginsubmit.click();
        lpo.menu.click();
        lpo.logout.click();
    }
}

只需在所需的步骤从另一个类(导入basepackage.PropertiesClass )调用static截图方法。 在您的代码中,登录后添加调用:

    LoginPageObjects lpo = PageFactory.initElements(driver, LoginPageObjects.class);
    lpo.username.sendKeys(PropertiesClass.propfile("username"));
    lpo.password.sendKeys(PropertiesClass.propfile("password"));
    lpo.loginsubmit.click();

    PropertiesClass.loginscreenshot();

    lpo.menu.click();
    lpo.logout.click();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM