允许包之间进行通信的最佳方法是什么?

时间:2018-02-03 17:16:28

标签: java selenium selenium-webdriver selenium-chromedriver

我创建了两个类:

  1. 验证标题:它访问Facebook页面并检查页面标题。
  2. ScreenShot :当页面标题不符合预期时,它负责捕获图像。
  3. 如何在Verify Title类中实例化 ScreenShot 类?

    关键注释:两个类都在不同的包中,但在同一个java项目中。

    public class ScreenShot {
    public static void capturarImagem(WebDriver driver, String NomeDaImagem) {      
        try {
            TakesScreenshot ts = (TakesScreenshot)driver;
            File source = ts.getScreenshotAs(OutputType.FILE);
            FileUtils.copyFile(source, new File("./Imagens/"+NomeDaImagem+".png") );
            System.out.println("Imagem capturada!");
        } catch (WebDriverException e) {
            System.out.println("Erro ao capturara a image: WebDriver Exception");
            e.printStackTrace();    
        } catch (IOException e) {
            System.out.println("Erro ao capturara a image: IOException");
            e.printStackTrace();
        }           
    }
    

    }

    {{1}}

    }

    Class VerifyTitle

    Class ScreenShot

3 个答案:

答案 0 :(得分:0)

在VerifyTitle.java类文件中为ScreenShot类使用import语句。

答案 1 :(得分:0)

这里的问题是包无法相互通信。您只需导入pkg2和类ScreenCapture 即可解决此问题。

 Project/
 ├── pkg1 -> VerifyTitle class public -> import pkg2 and class Screenshot
 └── pkg2 -> ScreenCapture class public 

答案 2 :(得分:-1)

您必须导入该类,以便在要使用它的类中识别它