Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何发送诱惑报告电子邮件?_Java_Email_Selenium_Allure - Fatal编程技术网

Java 如何发送诱惑报告电子邮件?

Java 如何发送诱惑报告电子邮件?,java,email,selenium,allure,Java,Email,Selenium,Allure,我正在尝试发送一封电子邮件,介绍使用selenium的框架生成的诱惑报告。 我已经阅读了文档,但找不到关于如何发送电子邮件的任何答案。 谁能给我指一下正确的方向吗 谢谢, SudheerAllure生成一组文件,这些文件应该通过web服务器查看。这是由于浏览器对从磁盘读取文件的限制。这是正确查看诱惑报告所必需的 因此,在我看来,你应该把诱惑的结果发布在网络服务器上,并通过电子邮件发送到报告的链接。顺便说一句,使用嵌入式JavaScript发送数兆字节的电子邮件附件很少是一个好方法 如果您只需要发

我正在尝试发送一封电子邮件,介绍使用selenium的框架生成的诱惑报告。 我已经阅读了文档,但找不到关于如何发送电子邮件的任何答案。 谁能给我指一下正确的方向吗

谢谢,
Sudheer

Allure生成一组文件,这些文件应该通过web服务器查看。这是由于浏览器对从磁盘读取文件的限制。这是正确查看诱惑报告所必需的


因此,在我看来,你应该把诱惑的结果发布在网络服务器上,并通过电子邮件发送到报告的链接。顺便说一句,使用嵌入式JavaScript发送数兆字节的电子邮件附件很少是一个好方法

如果您只需要发送报告摘要-目前还不可能。你可以找到这种功能的门票

使用Allure Docker服务容器,您可以获得可通过电子邮件发送的报告。
我知道这个问题很老了。我找到了一些使用第三方和amazon aws s3 bucket托管诱惑的答案。从安全的角度来看,第一个是不好的,第二个涉及金钱。让我们看看下面的一个是免费的。希望这能帮助那些在同一问题上挣扎的人们

下面的步骤是详细的,它的工作百分之百

  • 从maven central下载allure命令行zip文件。2.13.5是 我写这篇文章时的最新版本。Zip文件可以下载 从下面的链接。下面的链接不是垃圾邮件或恶意软件。如果需要,也可以从浏览器手动转到此链接:)
  • 下一步是提取此文件夹并将其移动到testng repo代码库。在我的例子中,我将提取的文件夹保存在src/main/resources/config下
  • 每次从java代码生成allure报告时,请将此allure-2.13.5文件夹复制到生成的报告文件夹中
  • 然后,您需要有两个文件才能在任何机器上打开报告(即使在没有安装allure的机器上)。如果您使用的是mac,那么该文件就是一个shell脚本open\u report\u mac.sh。如果您使用的是windows,则该文件是批处理脚本打开报告\u windows.bat
  • 现在,您可以将整个诱惑报告文件夹共享给任何人,他们只需运行此批处理文件或shell脚本即可查看报告。我知道这是一个很长的方法,但即使没有吸引力,它也能在机器上工作
  • 打开报告窗口的代码。bat:

    SET PARENTDIR=%cd%
    cd %PARENTDIR%\allure-2.13.5\bin
    allure.bat open %PARENTDIR%
    
    parent_dir=$(pwd)
    cd $parent_dir/allure-2.13.5/bin
    allure open $parent_dir
    
    打开\u报告\u mac.sh的代码

    SET PARENTDIR=%cd%
    cd %PARENTDIR%\allure-2.13.5\bin
    allure.bat open %PARENTDIR%
    
    parent_dir=$(pwd)
    cd $parent_dir/allure-2.13.5/bin
    allure open $parent_dir
    
    对于那些不知道如何以编程方式生成allure repor的人,下面是我的代码重要提示:您需要在mac电脑上安装allure,以下代码才能正常工作

    public static void generateAllureReport() {
        String pattern = "dd-MM-yyyy_HH:mm:ss";
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat(pattern);
        String reportfolder = "allure-report_" + simpleDateFormat.format(new Date());
        executeShellCmd("allure generate allure-results");
        executeShellCmd("mv allure-report " + reportfolder);
        executeShellCmd("cp -R src/main/resources/config/allure-2.13.5 "+reportfolder);
        executeShellCmd("cp src/main/resources/config/open_report_mac.sh "+reportfolder);
        executeShellCmd("cp src/main/resources/config/open_report_windows.bat "+reportfolder);
    }
    
    public static void executeShellCmd(String shellCmd) {
        try {
            Process process = Runtime.getRuntime().exec(shellCmd);
            process.waitFor();
        } catch (Exception e) {
            e.printStackTrace();
            System.out.println("Error in Executing the command " + shellCmd);
        }
    }