大数跨境

allure测试报告框架

allure测试报告框架 慧测
2021-08-02
1
导读:介绍allure是开源测试报告框架,支持pytest单元测试框架集成简单allure可以使用jenkins持

介绍

  • allure是开源测试报告框架,支持pytest单元测试框架
  • 集成简单
  • allure可以使用jenkins持续集成工具

配置allure环境

1、安装allure-pytest库文件

2、下载allure压缩包

https://github.com/allure-framework/allure2/releases

解压后配置环境变量 — cmd命令行里面可以使用allure命令

    解压完成放到没有中文的目录下

    环境变量:

            系统变量 (path)里面 

            新建 粘贴allure.bat文件所在的路径  //如果是一行显示,需要在路径前后+英文状态下 ;

3、验证

    cmd ---> allure --version   
    //可能需要重启pycharm或者电脑 在pycharm的命令行使用allure指令

结合selenium 使用

场景:测试百度搜索及搜索词条

步骤:

  • 1.打开浏览器 ---- 多个测试用例函数打开一次(setup_class 或者 fixture注解使用)
  • 2.打开百度
  • 3.输入关键词
  • 4.点击百度一下
  • 5.点击超链接
  • 6.输入词条
  • 7.点击搜索词条

脚本:

import pytest

from selenium import webdriver

from time import sleep

@pytest.fixture(scope = 'class')

def openBrowser():

        driver = webdriver.Chrome()

        driver.maximize_window()

        driver.implicity_wait(30)

        return driver

@allure.feature('测试百度搜索模块')   //模块

class TestBaidu:

        @allure.story('百度搜索功能')   //子功能

        @allure.title('用例标题')

        def test_baidu(self,openBrowser=webdriver.Chrome()):                    //openBrowser=webdriver.Chrome()  不写没有提示  ,完事后删点

                #打开百度

                with allure.step('打开百度'): //测试步骤

                        driver.get('https://www.baidu.com')

                driver.find_element_by_id('kw').clear()

                driver.find_element_by_id('kw').send_keys('林志玲')

                driver.find_element_by_id('su').click()

                driver.find_element_by_partial_link_text('百度百科').click()

                windows = driver.window_handles   //获取所有窗口

                driver.switch_to.window(windows[-1])  //获取最新的窗口

                driver.find_element_by_id('query').clear()

                driver.find_element_by_id('query').send_keys('高圆圆')

                driver.find_element_by_id('su').click()

                sleep(5)

        @allure.story(‘测试腾讯’) 

        @allure.serverity(allure.serverity_level.BLOCKER)  //用例级别

        def test_qq(self,openBrowser = webdriver.Chrome()):   //完事后删除  webdriver.Chrome()

                driver = openBrowser

                #打开qq页面

                with allure.step('打开qq'):

                        driver.get('https://www.qq.com')

                sleep(2)

                

                allure.attach(body='说明',name='名称',attachment_type=allure.attac

                hment_type.TEXT)

                if  '腾讯首页' == driver.title:

                        driver.get_screenshot_as_file('./screen_shot/chenggong.png')

                        allure.attach.file(source='./screen_shot/chenggong.png',name=成功截                              图,attachment_type=allure.attachment_type.png)

                        //source='源文件',name=显示名称,attachment_type=文件类型

                else:

                        #附加信息

                        allure.attach(body='身体',name='名称',attachment_type=allure.attac

                        hment_type.TEXT)


allure 基本特性

  • @allure.feature('测试百度搜索模块') --- 测试模块
  • @allure.story('百度搜索功能') ---子功能,测试用例函数
  • @allure.step(“测试步骤”) ----引用某个函数作为操作步骤的时候使用
 with allure.step(): ---- 写在测试用例函数里面

                  pass

添加文本说明或者附件

  • @allure.title('用例标题')

  • @allure.severity(allure.severity_level.BLOCKER)   --用例的级别

  • @allure.testcase(url='https://www.baidu.com',name='用例链接显示的名称')

  • @allure.issue(url='https://www.baidu.com',name='bug管理平台')

  • @allure.attach(bady,name.attachment_type)   //附加文件信息

  • @allure.attach.file(source='源文件',name=显示名称,attachment_type=文件类型)

配置文件

新建文件 pytest.ini

[pytest]

addopts = -v -s -q --alluredir ./report/json   //指定allure 报告所需json 数据的文件夹

testpaths = ./

python_files = test_*.py

python_classes = Test*

python_functions = test_*

生成测试报告

  • pytest //执行 --alluredir 制定allure报告所需json数据的文件夹
  • allure generate ./json -o ./report --clean //生成测试报告
  • allure open report --host 192.168.1.165 --port 8800 //打开报告 host = 本机ip

比如:

注意:多次打开后,出现有缓存情况  可以通过手动输入IP:端口号 进行打开


END


欢迎加入我们:

扫码加入公开课学习交流群②

已在公开课学习交流群① 

的小朋友请勿重复加群

免费技术支持微信:15712862196


咨询QQ:2657535456

咨询微信号:huice666


慧测公众号


【声明】内容源于网络
0
0
慧测
专注人工智能前沿技术落地企业实战应用
内容 404
粉丝 0
慧测 专注人工智能前沿技术落地企业实战应用
总阅读104
粉丝0
内容404