zoukankan      html  css  js  c++  java
  • 移动端测试——Allure报告与Jenkins集成 (10)

    Allure报告

    • Allure是一个独立的报告插件,生成美观易读的报告
    • 目前支持语言:Java、PHP、Ruby、Python、Scala、C#

    参阅:

    1.1 Allure安装

    1. 安装pytest的插件包allure-pytest

    pip3 install allure-pytest

    2. xml转html工具安装

    第一种:安装包

    平台 地址
    官方 https://github.com/allure-framework/allure2/releases



    1. 安装包解压后的bin目录配置到path系统环境变量

    2. 进入report上级目录执行命令:allure generate report/ -o report/html

    3. report目录下会生成index.html文件,即为可视化报告

    第二种:命令行
    brew installl allure -y

    3. 生成Allure报告

    在执行命令目录生成report文件夹,文件夹下包含xml文件
    pytest --alluredir report
    xml文件转化为html文件
    allure generate report/ -o report/html

    eg:

    pytest.ini

    [pytest]
    ;--html=./report.html
    ;删除原生html,增加Allure
    addopts = -s --alluredir report
    # 测试路径
    testpaths = ./Test
    # 测试文件名
    python_files = test_*.py
    # 测试类名
    python_classes = Test_*
    # 测试的方法名
    python_functions = test_*
    

    test_all.py

    class Test_allure:
        def setup(self):
            pass
        def teardown(self):
            pass
        def test_al(self):
            assert 0
    

    1.2 Allure之Pytest

    1.2.1 添加测试步骤

    方法:@allure.step(title="测试步骤001")

    eg:

    test_all.py

    import allure, pytest
    class Test_allure:
        def setup(self):
            pass
        def teardown(self):
            pass
        @pytest.mark.parametrize("a",[1,2,3])
        @allure.step('我是测试步骤001')
        def test_al(self, a):
            assert a != 2
    

    1.2.2 添加测试描述

    方法:allure.attach('描述的内容', '描述的名称(标题)')
    注意:没有@,放在函数里用
    eg:

    test_all.py

    import allure, pytest
    class Test_allure:
        def setup(self):
            pass
        def teardown(self):
            pass
        @pytest.mark.parametrize("a",[1,2,3])
        @allure.step('我是测试步骤001')
        def test_al(self, a):
            allure.attach('描述的内容', '描述的名称(标题)')
            assert a != 2
    

    1.2.3 添加严重级别

    测试用例设置不同的严重级别,可以帮助测试和开发人员更直观的关注重要Case
    方法:@pytest.allure.severity(Severity)
    参数:Severity:严重级别(BLOCKER,CRITICAL,NORMAL,MINOR,TRIVIAL)
    使用方式:
    @allure.severity(allure.severity_level.BLOCKER)

    @allure.severity('trivial')

    eg:

    test_all.py

    import allure, pytest
    class Test_allure:
        def setup(self):
            pass
        def teardown(self):
            pass
        @pytest.mark.parametrize("a",[1,2,3])
        @allure.severity('trivial')
        @allure.step('我是测试步骤001')
        def test_al(self, a):
            allure.attach('描述', '我是测试步骤001的描述~~~')
            assert a != 2
    

    1.2.4 测试用例与BUG的URL关联

    eg:

    • 关联测试用例地址的URL
      @allure.testcase("http://www.baidu.com/test_001")

    • 关联BUG地址的URL
      @allure.issue("http://www.163.com/bug_001")

    1.3 Jenkins安装

    • Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能
    • 一般情况下,公司内部Jenkins安装在服务端,不需要本地安装,都已配置完成,可直接操作使用

    1.3.1 CentOS6安装Jenkins强烈推荐

    参阅:

    1. 安装JDK

    • 安装java8
      yum install java-1.8.0-openjdk -y
    • 查看java版本
      java -version

    2. 安装Jenkins

    • 配置jenkins软件源

    wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
    rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

    提示:

    • 开始安装jenkins
      yum install jenkins -y
    • 启动jenkins
      service jenkins start

    3. 配置jenkins

    (1) 开机自启

    chkconfig jenkins on

    (2) 相关文件
    配置文件

    vim /etc/sysconfig/jenkins

    默认创建jerkins用户来运行jenkins服务,更改用户则
    chown -R xxx:xxx /var/log/jenkins /var/lib/jenkins /var/cache/jenkins

    提醒:

    • 完全卸载jenkins

    yum remove jenkins -y

    rm -r /etc/init.d/jenkins /var/log/jenkins /var/lib/jenkins /var/cache/jenkins

    日志文件

    tail -f /var/log/jenkins/jenkins.log

    升级文件中更换成清华源

    vim /var/lib/jenkins/hudson.model.UpdateCenter.xml

    <url>https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json</url>
    
    • 重启jenkins
      service jenkins restart
    (3) 远程访问

    查看防火墙规则
    iptables -L -n --line-numbers

    开放8080端口
    iptables -A INPUT -p tcp --dport 8080 -j ACCEPT

    CentOS7提示:

    3. 管理jenkins服务

    操作 命令
    开启 service jenkins start
    关闭 service jenkins stop
    重启 service jenkins restart
    • 启动jenkins
      service jenkins start

    Q&A

    • Q1:如果界面提示Jenkins正在启动,请稍后...
      vim /var/lib/jenkins/hudson.model.UpdateCenter.xml
    <url>https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json</url>
    

    参阅:

    1.3.1 Windows安装Jenkins

    参阅:

    1. 配置环境

    • jdk1.5以上

    2. 开始安装

    第一种:war包安装方式不喜欢

    默认安装路径:C:UsersXXX.jenkins(试了各种方法也没法改)

    • 安装好XAMPP(Tomcat)
    • 下载jenkins.war
    平台 地址
    官方 https://mirrors.tuna.tsinghua.edu.cn/jenkins/war-stable/latest/
    其他 https://www.lanzous.com/i5y63cf
    • 开始安装
      java -jar jenkins.war

    参数:

    • --httpPort 新端口号

    管理员密码

    参阅:

    第二种:安装包方式推荐
    • 下载并安装jenkins
    平台 地址
    官方 https://mirrors.tuna.tsinghua.edu.cn/jenkins/windows-stable/
    • 修改配置文件
      XXXJenkinshudson.model.UpdateCenter.xml
    <url>https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json</url>
    
    • 含管理员密码的文件夹

    • 管理服务

    1.3.2 Jenkins首次使用

    名称 说明
    管理jenkins
    访问jenkins localhost:8080
    关闭jenkins服务 localhost:8080/exit

    重启jenkins服务 localhost:8080/restart

    重载jenkins服务 localhost:8080/reload

    密码
    管理员密码 cat /var/lib/jenkins/secrets/initialAdminPassword
    • 配置jenkins

    • 登录界面

    • 主页
      进来好慢......

    参阅:

    1.4 Jenkins持续集成配置

    • Jenkins安装Allure插件

    • Jenkins安装Allure Commandline工具

    • 新建一个"自由风格"的项目

    • 邮件配置

    报告模版

    <hr/>(本邮件是程序自动下发的,请勿回复!)<hr/>
    项目名称:$PROJECT_NAME<br/><hr/>
    构建编号:$BUILD_NUMBER<br/><hr/>
    git版本号:${GIT_REVISION}<br/><hr/>
    构建状态:$BUILD_STATUS<br/><hr/>
    触发原因:${CAUSE}<br/><hr/>
    目录:${ITEM_ROOTDIR}<br/><hr/>
    构建日志地址:<a href=" ">${BUILD_URL}console</a ><br/><hr/>
    构建地址:<a href="$BUILD_URL">$BUILD_URL</a ><br/><hr/>
    报告地址:<a href="${BUILD_URL}allure">${BUILD_URL}allure</a ><br/><hr/>
    失败数:${FAILED_TESTS}<br/><hr/>
    成功数:${FAILED_TESTS}<br/><hr/>
    变更集:${JELLY_SCRIPT,template="html"}<br/><hr/>
    
    • 触发项目构建
      项目构建会运行测试代码

    提示:

    • 构建方式有两种
      ➢ 手动触发构建
      ➢ 更新github代码,触发器在定时任务到达时,会开始项目构建

    参阅:


    更新中......


  • 相关阅读:
    核函数基础一简单解释
    矩阵的基本性质 之 正规矩阵,矩阵的迹,行列式,伴随矩阵,矩阵的逆,对角矩阵,矩阵求导
    矩阵的基本性质 之 对称矩阵,Hermite矩阵,正交矩阵,酉矩阵
    矩阵的基本性质 之 矩阵加减法,数乘,乘法,转置
    机器学习实战基础(二十七):sklearn中的降维算法PCA和SVD(八)PCA对手写数字数据集的降维
    拉格朗日对偶性
    批处理符号2
    批处理符号1
    set命令
    goto命令
  • 原文地址:https://www.cnblogs.com/ricsy/p/11581737.html
Copyright © 2011-2022 走看看