java - 如何从一个类调用截图方法到另一个类?导航到我的代码后如何截取主页的截图?
问题描述
如何从一个类调用截屏方法到另一个类?登录我的代码后如何截取主页?
以下是课程:-
属性类:
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();
}
}
解决方案
只需在所需步骤static
从另一个类(导入)调用 screenshot 方法。basepackage.PropertiesClass
在您的代码中,在登录后添加调用:
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();
推荐阅读
- google-apps-script - 根据先前的单元格值突出显示后续单元格范围
- python - 如何从可调用的python返回一个列表到dag?
- python - 张量的索引列表
- tabulator - 制表符 - 使用 ajaxURLGenerator 属性
- javascript - 如何解密 CryptoJS 中的以下加密?
- python - Python 3.9 检查输入是 INT 还是 FLOAT
- php - 如果 7 列匹配,则检查 2 个表中的列并在第 3 个表中保存 2 列
- c++ - 在没有组合/装饰器的父类之前初始化子类
- phpmyadmin - phpmyadmin 登录页面不显示
- c# - 为什么部署在 Azure 上的 Web 应用程序的日期格式会发生变化?(ASP .NET Core)