zoukankan      html  css  js  c++  java
  • linux+jenkins+pytest+allure集成搭建

    一、安装JDK1.8(此步可以参考度娘,比较容易)

    一、安装python(此步可以参考度娘,比较容易)

      坑1:安装过程中由于服务器存在多个版本python,pip安装的包没有安装到对应版本的python目录,导致python脚本无法执行

      解决方案:方法1、卸载其他python版本,再重装,不过卸载不干净也有可能有问题

           方法 2、修改pip安装目录

            

     

            编辑 /usr/python/lib/python3.8/site.py文件(user_site就是对应的/usr/python/lib/python3.8/site-packages,user_base我还不太懂,我是设置成/usr/python/lib/python3.8)

            

           方法3、命令中指定安装目标:pip install numpy --target=/usr/local/lib/python2.7/site-packages

        坑2、linux多用户,明明已经把python环境变量配在了/etc/profile,但是echo $PATH时就是没有python的环境变量,导致无法执行Python命令

        解决方案:1.1、修改用户名下的.bashrc(vim /home/用户名/.bashrc),把变量直接导入,如下:

                export PATH=$PATH:/usr/python/bin
                export PATH=$PATH:/data/software/allure-2.17.2/bin

             1.2、修改完,使用source /home/wos/.bashrc使用修改生效

     

    二、安装jenkins(此步可以参考度娘,比较容易)

    三、安装allure

      3.1、下载allure:https://github.com/allure-framework/allure2/releases

      3.2、解压

      3.3、配置环境变量    

        将解压后allure下bin目录的路径/XXX/bin配置进环境变量

        vi /etc/profile

        # 在PATH后追加以下内容,保存

        :$PATH:/XXX/bin 

        # 使环境变量生效

        source /etc/profile

      3.4、验证

        在命令行输入allure --version,能出现版本说明allure命令行已经安装成功了


    四、Jenkins插件Allure

      4.1、安装Allure Jenkins Plugin

      4.2、配置Allure Jenkins Plugin

        4.2.1、进入「系统设置」->「Global Tool Configuration」

        4.2.2、配置

        

        

     

      4.3、安装HTML Publisher Plugin

      4.4、重启jenkins

    五、安装pytest的allure插件

      5.1、pip install allure-pytest -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

      5.2、代码需要的插件 pip install -r /XXX/requirements.txt -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

      注:-i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com为中国镜像,如果公司网络无法下载,可以加上,或者加其他镜像。

    六、jenkins建job

      6.1、建一个自由风格的job

        

       6.2、配置代码地址,摘取代码

        

      6.3、配置执行代码

       

        shell代码如下:      

    export PATH=$PATH:/usr/python/bin
    export PATH=$PATH:/data/software/allure-2.17.2/bin
    
    folder_test=$1
    file_test=$2
    class_test=$3
    case_test=$4
    thread_test=$5
    
    cd /data/jiangyf/pytest_allure
    python3 main.py $folder_test $file_test $class_test  $case_test $thread_test

        注:我是把执行命令放到一个shell中,然后再执行这个shell,也可以把命令放在上图的的框内。     

          这里有个问题,在终端执行python3 main.py没有问题的,但是在jenkins执行会报python3: command not found,由于没有找到解决方法,所以直接变量写到脚本中。

        main.py代码如下:    

    import os
    import pytest
    import sys
    
    if __name__ == '__main__':
        folder_test = sys.argv[1]
        file_test = sys.argv[2]
        class_test = sys.argv[3]
        case_test = sys.argv[4]
        thread_test = sys.argv[5]
        if case_test == 'None':
            pytest.main(['--clean-alluredir', '-s', '-q', '--alluredir', './temp',
                         folder_test+'/'+file_test, '-n=' + thread_test])
            os.system('allure generate ./temp -o ./report --clean')
        else:
            pytest.main(['--clean-alluredir', '-s', '-q', '--alluredir', './temp',
                         folder_test + '/' + file_test + '::' + class_test + '::' + case_test, '-n=' + thread_test])
            os.system('allure generate ./temp -o ./report --clean')

      

      6.4、配置allure

         

        

         注:jenkins上配置的目录,默认是要工作目标下(即代码所有目录)

        

        

  • 相关阅读:
    javascript,函数声明和函数表达式
    javascript,小数值舍入操作方法:ceil()、floor()、round()
    javascript,子字符串操作方法:Slice()、Substr()、Substring()的区别
    javascript,第一个基于node.js的Http服务
    javascript,创建对象的3种方法
    MFC学习笔记2——MFC和Win32
    Qt下 QString转char*
    [转载] Qt程序在Windows下的mingw发布
    VC 获取当前时间
    MFC 对话框设计问题(控件的使用)
  • 原文地址:https://www.cnblogs.com/ai594ai/p/15716540.html
Copyright © 2011-2022 走看看