当前位置: 首页 > news >正文

flash网站多少钱/海南网站推广

flash网站多少钱,海南网站推广,企业 做网站,网络推广培训班培训机构目录 前言: 1. Allure测试报告简介 2. Web自动化测试框架简介 3. 封装Web自动化框架 3.1 安装Selenium 3.2 封装Selenium 3.3 定制Allure测试报告 3.3.1 适配翻译插件 3.3.2 定制测试报告样式 4. 示例代码 5. 总结 前言: 随着现在Web应用的普…

目录

 前言:

1. Allure测试报告简介

2. Web自动化测试框架简介

3. 封装Web自动化框架

3.1 安装Selenium

3.2 封装Selenium

3.3 定制Allure测试报告

3.3.1 适配翻译插件

3.3.2 定制测试报告样式

4. 示例代码

5. 总结


前言:

随着现在Web应用的普及,越来越多的企业开始将业务线上化,Web应用也成为了企业中必不可少的一部分。随着Web应用的增多,Web自动化测试框架也愈发重要。今天我将为大家介绍一下如何使用Allure测试报告来定制Web自动化测试框架。

1. Allure测试报告简介

Allure测试报告是由Yandex公司开发的一款开源测试框架,它提供了非常丰富的信息和交互式操作来展示测试结果。Allure测试报告可以提供如下特点:

- 集成多种测试框架:Allure支持JUnit、TestNG等多种测试框架;
- 可视化测试结果:Allure测试报告提供了交互式的测试结果展示方式,易于测试人员查看和理解;
- 定制测试报告:Allure测试报告支持用户自定义模板,可以根据需求自由定制测试报告。

2. Web自动化测试框架简介

Web自动化测试框架是一些工具和库的集合,用于自动化测试Web应用程序。这些框架可以帮助测试人员快速构建可重用的测试脚本。

常用的Web自动化测试框架有如下几种:

- Selenium:一个基于浏览器自动化的框架,可以模拟用户行为对Web应用程序进行自动化测试;
- RobotFramework:一个开源的自动化测试框架,支持Python编写测试脚本;
- Cucumber:一个BDD(行为驱动开发)测试框架,用自然语言方式定义测试用例。

3. 封装Web自动化框架

在测试Web应用程序时,我们可以使用上述框架来编写测试脚本。但是为了实现定制化的测试报告,需要对测试框架进行封装。下面以Python语言为例来对Selenium进行封装。

3.1 安装Selenium

首先需要安装Selenium,可以使用pip命令进行安装:

pip install selenium

3.2 封装Selenium

接下来进行Selenium的封装。首先,我们新建一个selenium_driver.py文件,用于初始化WebDriver,并定义一些常用的操作。

from selenium import webdriver
from selenium.webdriver.chrome.options import Optionsclass SeleniumDriver:def __init__(self, driver_path, headless=False):""":param driver_path: WebDriver的路径:param headless: 是否无头模式"""chrome_options = Options()if headless:chrome_options.add_argument('--headless')self.driver = webdriver.Chrome(executable_path=driver_path, options=chrome_options)def get(self, url):self.driver.get(url)def find_element(self, locator):""":param locator: 元素定位,示例:'css selector', 'body'"""return self.driver.find_element(*locator)def close(self):self.driver.quit()

在上述代码中,SeleniumDriver类封装了Selenium的WebDriver,并提供了常用的Web操作方法。

3.3 定制Allure测试报告

接下来,我们需要对Allure测试报告进行定制。首先,我们新建一个allure_report.py文件,用于自定义Allure测试报告。

Allure测试报告支持用户自定义模板,我们可以根据需求自由定制测试报告。下面介绍几个常见的测试报告模板。

3.3.1 适配翻译插件

在Allure测试报告中添加翻译插件可以使报告支持多语言,提高测试报告的可读性和可访问性。

方法一:

安装allure-pytest和allure-pytest-translations两个库:

pip install allure-pytest
pip install allure-pytest-translations

接下来,我们在pytest.ini文件中添加如下配置:

[pytest]
addopts = -v –capture=no –alluredir=./result –clean-alluredir
testpaths = ./tests/
python_files = test_*.py
python_classes = Test*
python_functions = test_*
cache_dir = ./.pytest_cache[allure]
language = zh
plugins = i18n,pytester

其中,language参数用于定义测试报告的语言,plugins参数指定使用哪些插件。

方法二:

在allure.yml文件中添加如下配置:

# Langauge settings
language: en#plugins settings
plugins:- i18n- junit- summary

在pytest.ini文件中添加如下配置:

[pytest]
addopts = -v –capture=no –alluredir=./result –clean-alluredir
testpaths = ./tests/
python_files = test_*.py
python_classes = Test*
python_functions = test_*
cache_dir = ./.pytest_cache[allure]
config_file = ./allure.yml

3.3.2 定制测试报告样式

除了支持多语言,在Allure测试报告中还可以定制报告样式。我们可以通过编写CSS文件来定制测试报告。

首先,新建一个allure.css文件,定义测试报告的样式。例如:

/* 自定义测试报告主题 */
body {background-color: #F8F8F8;color: #000000;
}

接下来,我们在pytest.ini文件中添加如下配置:

[pytest]
addopts = -v –capture=no –alluredir=./result –clean-alluredir
testpaths = ./tests/
python_files = test_*.py
python_classes = Test*
python_functions = test_*
cache_dir = ./.pytest_cache[allure]
# 使用自定义的CSS样式
extra_css = ./allure.css

通过上述操作,我们完成了定制化Allure测试报告的工作。

4. 示例代码

下面是一个示例代码,演示如何对Selenium进行封装,并使用Allure测试报告定制Web自动化测试框架。

import allure
from selenium.webdriver.common.by import By
from selenium_driver import SeleniumDriverclass TestBaidu:def setup_method(self):self.driver = SeleniumDriver('chromedriver.exe', headless=False)self.driver.get('https://www.baidu.com')def teardown_method(self):self.driver.close()@allure.step('在搜索框输入关键字:{1},点击搜索按钮')def baidu_search(self, keyword):self.driver.find_element((By.ID, 'kw')).send_keys(keyword)self.driver.find_element((By.ID, 'su')).click()@allure.title('测试百度首页搜索功能')def test_baidu_search(self):with allure.step('输入关键字:Allure Report'):self.baidu_search('Allure Report')with allure.step('验证搜索结果页面是否存在指定元素'):assert self.driver.find_element((By.PARTIAL_LINK_TEXT, 'allure.qatools.ru')) is not None

在上述代码中,我们使用了SeleniumDriver来初始化WebDriver,并定义了封装后的测试用例。在测试用例中,我们使用了Allure测试报告的@step和@title装饰器来自定义测试报告。

5. 总结

本文介绍了如何使用Allure测试报告来定制Web自动化测试框架。通过定制化测试报告,我们可以更加清晰地展示测试结果,并提高测试报告的可读性和可访问性。同时,还介绍了如何对Selenium进行封装,使测试脚本更加易于编写和维护。

 作为一位过来人也是希望大家少走一些弯路,在这里我给大家分享一些自动化测试前进之路的必须品,如果你用得到的话可以直接拿走,希望能对你带来帮助。(WEB自动化测试、app自动化测试、接口自动化测试、自动化测试开发、大厂面试真题、简历模板等等),相信能使你更好的进步!

方式:留【自动化测试】即可
【自动化测试交流】:574737577(备注ccc)http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=yTky89vp61ak2ySZMOHqFKs3cy63KNdR&authKey=CdUemWSkJDENrUBUAj1JFqz5RQ4ov6MKoYzfjSJmLZ9Ot656Xl857XpyxrFO6OI5&noverify=0&group_code=574737577

相关文章:

Allure测试报告定制全攻略,优化你的Web自动化测试框架!

目录 前言: 1. Allure测试报告简介 2. Web自动化测试框架简介 3. 封装Web自动化框架 3.1 安装Selenium 3.2 封装Selenium 3.3 定制Allure测试报告 3.3.1 适配翻译插件 3.3.2 定制测试报告样式 4. 示例代码 5. 总结 前言: 随着现在Web应用的普…...

推荐系统算法详解

文章目录 基于人口统计学的推荐算法用户画像 基于内容的推荐算法相似度计算基于内容推荐系统的高层次结构特征工程数值型特征处理类别特征处理时间型特征处理统计型特征处理 推荐系统常见反馈数据基于UGC的推荐TF-IDFTF-IDF算法示例1. 引入依赖2. 定义数据和预处理3. 进行词数统…...

企业网站架构部署与优化之LAMP

LAMP LAMP概述1、各组件的主要作用2、各组件安装顺序 编译安装Apache http服务编译安装MySQL服务编译安装PHP解析环境安装论坛 LAMP概述 LAMP架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供静态和动态Web站点服务…...

攻防世界安卓逆向练习

文章目录 一.easy-so1. jadx分析程序逻辑2. ida查看so文件3. 解题脚本: 二.ezjni1. 程序逻辑分析2. 解题脚本: 三.easyjava1. 主函数逻辑2. getIndex函数3. getChar函数4.解题脚本 四.APK逆向1.程序逻辑分析2.解题脚本3.动态调试 Android2.0app3 一.easy-so 1. jadx分析程序逻…...

自然语言处理从入门到应用——自然语言处理的语言模型(Language Model,LM)

分类目录:《自然语言处理从入门到应用》总目录 语言模型(Language Model,LM)(也称统计语言模型)是描述自然语言概率分布的模型,是一个非常基础和重要的自然语言处理任务。利用语言模型&#xff…...

【MySql】InnoDB一棵B+树可以存放多少行数据?

文章目录 背景一、怎么得到InnoDB主键索引B树的高度?二、小结三、最后回顾一道面试题总结参考资料 背景 InnoDB一棵B树可以存放多少行数据?这个问题的简单回答是:约2千万。为什么是这么多呢?因为这是可以算出来的,要搞…...

【综述】视频无监督域自适应(VUDA)的小综述

【综述】视频无监督域自适应(VUDA)的小综述 一篇小综述,大家看个乐子就好,参考文献来自于一篇综述性论文 完整PPT已经上传资源:https://download.csdn.net/download/weixin_46570668/87848901?spm1001.2014.3001.550…...

《深入理解计算机系统(CSAPP)》第9章虚拟内存 - 学习笔记

写在前面的话:此系列文章为笔者学习CSAPP时的个人笔记,分享出来与大家学习交流,目录大体与《深入理解计算机系统》书本一致。因是初次预习时写的笔记,在复习回看时发现部分内容存在一些小问题,因时间紧张来不及再次整理…...

信息论与编码 SCUEC DDDD 期末复习

1.证明熵的可加性 2.假设一帧视频图像可以认为是由3*10的五次方个像素组成(每像素均独立变化),如果每个像素可取128个不同的等概率亮度表示。请计算出每帧图像含多少信息量?若有一口述者在约12000个汉字的字汇中选400个字来口述此…...

windows安装python开发环境

最近因工作需要,要学习一下python,所以先安装一下python的开发环境,比较简单 下载和安装Python 首先,在浏览器中打开Python的官方网站(https://www.python.org/downloads/) 然后,从该网站下载与你的操…...

java idea常用的快捷方式

文章目录 java idea常用的快捷方式快速复制选多行改变代码格式化 快速代码编辑psvmsout5.forarr.for快速死循环快速补全代码当方法还没创建的时候抽取具有一定功能的代码变成方法 java idea常用的快捷方式 快速复制 c t r l d \color{red}{ctrld} ctrld 选多行改变 A l t 鼠…...

lwIP 开发指南

目录 lwIP 初探TCP/IP 协议栈是什么TCP/IP 协议栈架构TCP/IP 协议栈的封包和拆包 lwIP 简介lwIP 源码下载lwIP 文件说明 MAC 内核简介PHY 芯片介绍YT8512C 简介LAN8720A 简介 以太网接入MCU 方案软件TCP/IP 协议栈以太网接入方案硬件TCP/IP 协议栈以太网接入方案 lwIP 无操作系…...

RabbitMQ消息属性详解

content-type属性 如同各种标准化的HTTP规范,content-type传输消息体的MIME类型。例如,如果你的应用程序正在发送JSON序列化的数据值,那么将content-type属性设置为application/json将允许尚待开发的消费者应用程序在收到消息时检查消息类型…...

shader 混合模式

在所有着色器执行完毕,所有纹理都被应用,所有像素准备被呈现到屏幕之后,使用Blend命令来操作这些像素进行混合。 3.2 blend的语法 BlendOff:关闭blend混合(默认值) BlendSrcFactor DstFactor :配置并启动混…...

【大数据工具】Hive 安装

Hive 环境搭建与基本使用 Hive 安装包下载地址:https://dlcdn.apache.org/hive/ 注:安装 Hive 前要先安装好 MySQL 1. MySQL 安装 MySQL 安装包下载地址:https://dev.mysql.com/downloads/mysql/archives/community/MySQL%20::%20Downloa…...

Android9.0 iptables用INetd实现app某个时间段禁止上网的功能实现

1.前言 在9.0的系统rom定制化开发中,在system中netd网络这块的产品需要中,会要求设置app某个时间段禁止上网的功能,liunx中iptables命令也是比较重要的,接下来就来在INetd这块实现app某个时间段禁止上网的的相关功能,就是在系统中只能允许某个app某个时间段禁止上网,就是…...

webpack.config.js基础配置(五大核心属性)

在上一节webpack零基础入门中我们在安装完webpack 和 webpack-cli依赖之后,直接通过npx webpack ./src/main.js --modedevelopment的方式对src下的js文件进行了打包。 其中的 ./src/main.js: 指定 Webpack 从 main.js 文件开始打包,不但会打包 main.js&a…...

【华为OD机试】阿里巴巴找黄金宝箱(IV)【2023 B卷|200分】

【华为OD机试】-真题 !!点这里!! 【华为OD机试】真题考点分类 !!点这里 !! 题目描述 一贫如洗的樵夫阿里巴巴在去砍柴的路上,无意中发现了强盗集团的藏宝地, 藏宝地有编号从0-N的箱子,每个箱子上面有一个数字,箱子排列成一个环, 编号最大的箱子的下一个是编号为0的箱…...

Qt6 C++基础入门2 文件结构与信号和槽

目录 标准文件结构widget.hwidget.cppmain.cpppro 文件 信号与槽自定义信号connect 的两种方式 标准文件结构 widget.h widget 对象的头文件 一般会直接在头文件导入所有后续在 cpp 文件内用到的类,所以 include 基本都会写在这里 // 头文件标志起始 #ifndef WID…...

常用模拟低通滤波器的设计——契比雪夫II型滤波器

常用模拟低通滤波器的设计——契比雪夫II型滤波器 切比雪夫 II 型滤波器的振幅平方函数为: 式中,为有效带通截止频率, 是与通带波纹有关的参量, 大,波纹大,; 为 N 阶契比雪夫多项式。 在 Matl…...

SSM 如何使用 Redis 实现缓存?

SSM 如何使用 Redis 实现缓存? Redis 是一个高性能的非关系型数据库,它支持多种数据结构和多种操作,可以用于缓存、队列、计数器等场景。在 SSM(Spring Spring MVC MyBatis)开发中,Redis 可以用来实现数…...

uin-app如何获取微信昵称和头像的博客

在很多应用中都会使用到微信登录功能,这样可以方便用户快速地完成注册、登录等操作。本文将介绍如何通过uin-app获取微信用户的昵称和头像信息。 第一步:准备开发环境 首先,需要下载并安装QQ精简版开发工具(uin-app)…...

第六十七天学习记录:对陈正冲编著《C 语言深度解剖》中关于变量命名规则的学习

最近开始在阅读陈正冲编著的《C 语言深度解剖》,还没读到十分之一就感觉收获颇多。其中印象比较深刻的是其中的变量的命名规则。 里面提到的不允许使用拼音正是我有时候会犯的错。 因为在以往的工作中,偶尔会遇到时间紧迫的情况。 而对于新增加的变量不知…...

matlab 计算点云的线性指数

目录 一、算法原理二、代码实现三、结果展示一、算法原理 选取当前点 p i ( x , y , z ) p_{i}(x,y,z) p<...

SpringBoot集成ElasticSearch

文章目录 前言一、ElasticSearch本地环境搭建二、SpringBoot整合ElasticSearch1.pom中引入ES依赖2.application.yaml配置elasticsearch3.ElasticSearchClientConnect连接ES客户端工具类4.ElasticSearchResult封装响应结果5.Person实体类6.Person实体类7.ElasticsearchControlle…...

分治入门+例题

目录 &#x1f947;2.3.2 合并排序 &#x1f947;2.3.3 快速排序 &#x1f33c;P1010 [NOIP1998 普及组] 幂次方 &#x1f333;总结 形象点&#xff0c;分治正如“凡治众如治寡&#xff0c;分数是也”&#xff0c;管理少数几个人&#xff0c;即可统领全军 本质&#xff…...

剑指offer打卡

这里写目录标题 day1 二叉树和为某一路径day2复杂链表的复刻day3二叉搜索树与双向链表day4数字排列day5找出出现次数超过一半的次数day6 二进制中1的个数day7 二叉树的最近公共祖先day8 字符串转换为整数day9 构建乘积数组day10不用加减乘除的加法day11求12....nday11 股票的最…...

运维实用脚本整理

运维实用脚本整理 本文脚本仅供参考运维排查问题思路运维排查问题的方法和命令&#xff08;1&#xff09;尽可能搞清楚问题的前因后果&#xff08;2&#xff09;有谁在?&#xff08;3&#xff09;之前发生了什么?&#xff08;4&#xff09; 现在在运行的进程是啥?&#xff0…...

INT8 中的稀疏性:加速的训练工作流程和NVIDIA TensorRT 最佳实践

INT8 中的稀疏性&#xff1a;加速的训练工作流程和NVIDIA TensorRT 最佳实践 文章目录 INT8 中的稀疏性&#xff1a;加速的训练工作流程和NVIDIA TensorRT 最佳实践结构稀疏量化在 TensorRT 中部署稀疏量化模型的工作流程案例研究&#xff1a;ResNet-34要求第 1 步&#xff1a;…...

隧道模式HTTP代理使用代码示例

以下是使用Python实现隧道模式HTTP代理的代码示例&#xff1a; python import socket def handle_client(client_socket): # 接收客户端请求 request client_socket.recv(4096) # 解析请求头&#xff0c;获取目标主机和端口号 host request.split(b\r\n)[1].sp…...