测试人社区

安装allure时遇到的坑:JAVA_HOME is set to an invalid directory: D:\Java\jdk1.8.0_66 Please set the JAVA_HOME variable in your environment to match the location of your Java installation.

先说下 正常安装allure的方式:

1、官网上下载allure压缩包,解压到本地文件夹(文件夹尽量为英文并且路径简单)

因为从官网下载速度真的很慢很慢,我在此分享一个allure-2.13.1的安装包,需要的自取哈。

链接:https://pan.baidu.com/s/1TEa7OJO39GatKz0HVG26fw
提取码:wcxp

2、添加PATH环境变量

进入allure文件夹的bin目录下,会看到allure.bat文件,打开allure.bat文件,然后将allure.bat文件路径设置到系统环境变量path下

3、校验是否安装成功

一般情况下,在cmd中运行 allure命令,如下图所示即为安装成功

我这踩的坑是,可以正常显示上图,但是生成报告(运行allure generate ./result/)时报错了,所以为了保险起见,

建议运行下面2个命令试试,如果可以成功就没问题啦。

执行pytest 生成中间结果

pytest test_calc.py --alluredir ./result/

生成allure 最终的测试报告

allure generate ./result/

与pytest的集成:

pip install pytest
pip install allure-pytest

以下是我踩的坑!!!

  1. 开始我安装的是allure2.7的版本,学了半天后到生成报告时总是报错(下图):“command not found”,后来被告知allure的版本太低,我就又装了个2.13的版本,并且把2.7的版本删掉了,且重新修改了环境变量。
    image

  2. 再次打开运行 allure ,或者在 pycharm的 terminal下 allure,都是command not found(此时我未重启pyharm,只重启了gitbash):

大概意思是我的 环境变量没配对,

我只配置了java的环境变量,输入javac的时候还是提示为不可用的批处理文件

导致我安装了allure之后在cmd中输入allure提示ERROR:JAVA_HOME为无效的目录,即JAVA_HOME is set to an invalid directory. please set the java_home variable in your environment variable to match the location of your java installation

安装allure的前提:cmd中输入java和javac都可以运行

以下为在java环境ok的情况下配置javac的环境:

1.安装完JDK后配置环境变量 计算机→属性→高级系统设置→高级→环境变量

2.系统变量→新建→变量名JAVA_HOME,变量值C:\Program Files(x86)\Java\jdk1.8.0_66(自己的jdk安装目录)

3.系统变量→新建→变量名CLASSPATH,变量值.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar

4.找到系统变量path→编辑→输入%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

5.确定→关闭控制面板和环境变量设置窗口,重新打开pycharm、cmd或gitbash,运行javac 或allure
如下图,即成功了。

还有,千万记得也要重启下pycharm!!否则terminal的命令还是会报错的。如果重启pycharm和gitbash都不行的话,建议 重启电脑!!!,我踩得坑就是必须重启电脑后问题才解决。

image