6 Allure报告 6.1 Allure介绍 Allure是一个独立的报告插件,生成美观易读的报告,比之前的html好看,目前支持的语言:Java.PHP.Ruby.Python.C#等 6.2 Allure安装 pip3 install allure-pytest (注意:这里不要使用pytest-allure-adaptor) 有一个帮助文档可以参考: https://docs.qameta.io/allure/#_about 生成Allure报告的命令: pytest --allured…
前言:该系列文章,围绕持续集成:Jenkins+Docker+K8S相关组件,实现自动化管理源码编译.打包.镜像构建.部署等操作:本篇文章主要描述Pipeline流水线用法. 一.Webhook原理 Pipeline流水线任务通常情况下都是自动触发的,在Git仓库中配置源码改动后通知的地址即可. 例如在Gitee仓库中,基于WebHook的配置,可以在向仓库push代码后,自动回调预先设定的请求地址,从而触发代码更新后的打包动作,基本流程如下: 这里涉及到两个核心配置: Gitee回调:即仓库接…
前言:该系列文章,围绕持续集成:Jenkins+Docker+K8S相关组件,实现自动化管理源码编译.打包.镜像构建.部署等操作:本篇文章主要描述Kubernetes引擎用法. 一.基础简介 Kubernetes简称K8S,是一个开源的分布式的容器编排引擎,用来对容器化应用进行自动化部署和管理. Control-Plane-Components:控制平面组件,对集群做出全局决策,例如:调度.检测和事件响应,可以在集群中的任何节点上运行: api:作为K8S控制面的组件,开放K8S的API,相当于…
简介 我们为啥要了解状态码,从它的作用,就不言而喻了.如果不了解,我们就会像个无头苍蝇,横冲直撞.遇到问题也不知道从何处入手,就是想找别人帮忙,也不知道是找前端还是后端的工程师. 状态码的作用是:web服务器用来告诉客户端,发生了什么事.· 状态码位于HTTP Response 的第一行中,会返回一个”三位数字的状态码“和一个“状态消息”. ”三位数字的状态码“便于程序进行处理, “状态消息”更便于人理解. 简略状态码对照表 这部分主要是给大家练就一双火眼金睛,看到状态码一眼定位到问题所在,该找…
前言 之前在分析spring boot 源码时导出可见@ConditionalOnBean 之类的注解,那么它到底是如何使用的以及其工作流程如何,我们这里就围绕以下几点来分析: @Conditional系列与Condition的关系:@ConditionalXxx是注解,XxxCondition是对前面注解的对应处理类. @Conditional与Condition的源码分析 总结 一.@Conditional系列与Condition的关系 @ConditionalXxx是注解,XxxCondi…
#!/usr/bin/python3# -*- coding:UTF-8 -*-import smtplib#smtplib库主要用来连接第三方smtp库,用来发邮件from email.mime.text import MIMETextfrom email.header import Headerfrom email.mime.multipart import MIMEMultipart#email库主要用来定义邮件的格式,发送人,接收人,邮件标题,邮件正文 smtp_server = 'sm…
一.UnitTest基本使用 1. UnitTest框架 1.1 什么是框架 说明: 框架英文单词frame 为解决一类事情的功能集合 1.2什么是UnitTest框架 概念:UnitTest是python自带的一个单元测试框架,用它来做单元测试 1.3为什么使用UnitTest框架? 能够阻止多个用例去执行 提供丰富的断言方法 能够生成测试报告 1.4 UnitTest框架及原理 做过自动化测试的同学应该都知道python中的unittest框架,它是python自带的一套测试框架,学习起来也…
情景: 在用selenium进行web页面自动化时,时不时会遇到上传附件的情况,常见的情况就是一个上传按钮,点击后弹出windows窗口,选择文件后上传,如下图1所示 图1 这种情况超出了selenium的能力范围,需要借助其他工具来实现,这里介绍AutoIt这个工具: 1.下载并安装 进入AutoIt官网,选择AutoIt -> Downloads,如图2: 图2 然后选择Full Installation版本,里面包含了所需的所有工具,如图3: 图3 下载后直接安装即可. 2.探测控件 (1…
在实现接口自动测试的时候,会经常遇到接口参数依赖的问题,例如调取登录接口的时候,需要先获取登录的key值,而每次请求返回的key值又是不一样的,那么这种情况下,要实现接口的自动化,就要用到postman中设置环境变量这个功能了: 在postman中,可以利用tests将接口返回的response设置为环境变量,供后续接口使用(类似参数化的概念) 获取环境变量需要具体方法如下图所示: var jsonData =JSON.parse(responseBody);//获取body中返回的所有参数 p…
一.概要 Fabric是基于Python(2.7,3.4+以上版本)实现的SSH命令行工具,简化了SSH的应用程序部署及系统管理任务,它提供了系统基础的操作组件,可以实现本地或远程shell命令,包括命令执行.文件上传.下载及完整执行日志输出等功能.Fabric在paramiko的基础上做了更高一层的封装,操作起来会更加简单. Fabric官网地址为:http://www.fabfile.org/. 二.Fabric安装 Mac os及CentOS 安装 pip3 install fabric3…
Postman Script 功能,支持原生的JS,所以可以使用JS解决很多接口自动化的一些问题,例如接口依赖.接口参数专递和接口断言等: 这里主要是针对Pre-Request Script 和 Tests 两个模块做介绍,它支持以嵌入脚本的方式动态准备测试数据,并根据业务需求设计测试用例. postman接口的运行顺序:每次请求前,先运行Pre-request Script中的方法,然后在调用接口,最后是运行Tests中的方法,即(Pre-request Script->接口请求->Test…
Appium Windows服务端GUI各项的解释,从官方扒过来的,界面图标和最新版本有点不太一样,其他还是比较简单易懂的 原文https://github.com/appium/appium-dot-exe   Parameter Guide Main Window Android Button: Displays the Android settings. Settings Button: Displays the General settings. Developer Button: Di…
在实现接口自动测试的时候,会经常遇到接口参数依赖的问题,例如调取登录接口的时候,需要先获取登录的key值,而每次请求返回的key值又是不一样的,那么这种情况下,要实现接口的自动化,就要用到postman中设置环境变量这个功能了: 在postman中,可以利用tests将接口返回的response设置为环境变量,供后续接口使用(类似参数化的概念) 获取环境变量需要具体方法如下图所示: var jsonData =JSON.parse(responseBody);//获取body中返回的所有参数 p…
如果想从头学起selenium,可以去看看这个系列的文章哦! https://www.cnblogs.com/miki-peng/category/1942527.html ​ 本篇主要内容:1.元素的基本操作:2.等待操作:3.iframe操作:4.alert弹出框 ​ 下篇主要内容:1.鼠标操作:2.键盘操作:3.下拉框操作:4.js处理 元素基本操作 常用操作 ​ 关键代码: 点击:ele.click() 输入内容:ele.send_keys("内容") 清空内容:ele.cle…
前言:该系列文章,围绕持续集成:Jenkins+Docker+K8S相关组件,实现自动化管理源码编译.打包.镜像构建.部署等操作:本篇文章主要描述Jenkins基础用法. 一.Jenkins安装 1.环境部署 下载Jenkins包 注意这里直接下载war文件,以Java服务的形式启动. 环境:war运行 版本:2.289.3 类型:Generic Java package (.war) 启动命令 java -jar jenkins.war --httpPort=8090 启动日志 Jenkins…
原文地址http://blog.csdn.net/kaka1121/article/details/51878346 单个控件获取 需求: 右键到某个控件上,就能获取到至多三个可以唯一定位该元素的相对Xpath,并将其标记为以上8种抽象控件之一. 可抓取控件节点名: input(type=="text"."submit"."button"."reset"."image"."checkbox&quo…
如果想从头学起selenium,可以去看看这个系列的文章哦! https://www.cnblogs.com/miki-peng/category/1942527.html ​ 本篇主要内容:1.鼠标操作:2.键盘操作:3.下拉框操作:4.js处理 ​ 上篇主要内容:1.元素的基本操作:2.等待操作:3.iframe操作:4.alert弹出框 传送门 鼠标操作 ​ selenium的ActionChains类提供了一系列模拟鼠标操作的方法,主要操作流程:1.存储鼠标操作:2.调用perform(…
目录 1.聚合报告介绍 2.聚合报告界面详解 3.聚合报告中信息点说明 (1)百分位数的说明 (2)吞吐量说明 提示:聚合报告组件的使用和察看结果树组件的使用方式相同.本篇文章主要是详细的介绍一下聚合报告组件内容,不做示例演示. 1.聚合报告介绍 在使用JMeter进行性能测试时,聚合报告(Aggregate Report)可以说是必用的监听器. (1)聚合报告的生成方式 聚合报告有2中生成方式: 在已有.jtl文件的情况下,直接选择加载文件即可生成聚合报告. 在运行JMeter的过程中,动态生…
简介 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态. adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信.它可为各种设备操作提供便利,如安装和调试应用. Tips: 在 android_sdk/platform-tools/ 中找到 adb 工具,然后根据其具体的路径配置好环境变量.然后启动cmd 输入‘adb’即可查看是否配置成功. 有小伙伴会问,为什么我需要学习…
简介 本篇文章主要介绍了python中yaml配置文件模块的使用让其完成数据和代码的分离,宏哥觉得挺不错的,于是就义无反顾地分享给大家,也给大家做个参考.一起跟随宏哥过来看看吧. 思考问题 前面我们配置Capability时,各个参数都是在代码里面写死的,比如:desired_caps['platformVersion']='5.1.1' 一旦设备和测试的app发生改变则需要去代码里面一个个修改,要么同时根据不同设备不同App来维护多套代码,这样显示是不符合规范而且是低效的!违背了自动化的初衷,…
今天的博客分为两部分 1.allure报告实战 2.allure结合jenkins 一.allure 1.allure安装 a.下载路径 https://repo.maven.apache.org/maven2/io/qameta/allure/allure-commandline/2.13.0/allure-commandline-2.13.0.zip b.安装 下载完成后,直接解压就可以,我喜欢把allure放到python的安装目录下 C:\Users\admin\anaconda3\Li…
使用appium可以实现app自动化测试,我们之前是连接一台手机去运行,如何同时连接多台手机呢?很多人可能想到的是多线程(threading).今天分享一种比多线程更简单的方法,虽然不是多台手机同时运行,但可以连接多台手机依次运行,大致的运行方式是:001号测试用例:A手机,B手机...,002号测试用例:A手机,B手机... 环境准备 appium的安装:adt,nodejs,appium的python库,appium server pytest的安装:pytest allure的安装:all…
背景: python3+appium+pytest+allure写了安卓的自动化脚本,在windows本机pycharm上跑通过后生成了allure报告.  公司jenkins搭建在linux服务器上. 痛点: 1.allure报告需要一堆css/js静态数据文件,才能展示数据,给领导汇报时总不能一丢就丢个大大的压缩包,并且还不能保证能查看成功的吧----edge浏览器能打开,其他浏览器打开无数据: 2.把脚本集成到jenkins上,整到linux服务器上跑,又得在服务器上去折腾一套环境出来,需…
一.puppet 介绍 1.puppet是什么 puppet是一个IT基础设施自动化管理工具,它能够帮助系统管理员管理基础设施的整个生命周期: 供应(provisioning).配置(configuration).联动(orchestration)及报告(reporting). 基于puppet ,可实现自动化重复任务.快速部署关键性应用以及在本地或云端完成主动管理变更和快速扩展架构规模等. 遵循GPL 协议(2.7.0-), 基于ruby语言开发. 2.7.0 以后使用(Apache 2.0…
本文收录在Linux运维企业架构实战系列 1.认识puppet 1.1 引入 puppet是什么,咱们先不用专业的名词解释它,咱们先描述一些工作场景,看明白这些工作场景,自然会知道puppet是什么. (1)场景一: 管理员想要在100台服务器上同时创建一个名叫"along"的用户,怎么办,当然,我们可以"手动解决",登录每一台服务器,然后一台一台的创建用户,如果你真的这样干,那么我只能说,算你狠!!!但是,既然我们这篇文章是介绍puppet的,我们肯定会推荐你使用…
Capabilities介绍 实际上它的全称是:Desired capabilities Desired capability是一个JSON对象,包含一组key和value值.它由客户端发送给服务端,告诉服务端期望的Capabilities(可以理解为一种能力)有哪些,然后服务端根据这些capabilities创建自动化会话(session) 初始化参数详解 ·AUTOMATION_NAME: DesiredCapabilities caps = new DesiredCapabilities(…
环境及安装可查看 pytest+jenkins安装+allure导出报告 要让allure报告更漂亮,更直观,需要在脚本中写入allure特性 一开始allure调用step().story().feature()等总是报错,提示不存在这些方法. @allure.feature('ceshi') 警告信息: 通过查看allure的__init__.py文件 在调用allure的feature().story().step()等方法时,加上MASTER_HELPER即可 @allure.MASTE…
1.认识puppet 1.1 引入 puppet是什么,咱们先不用专业的名词解释它,咱们先描述一些工作场景,看明白这些工作场景,自然会知道puppet是什么. (1)场景一: 管理员想要在100台服务器上同时创建一个名叫"along"的用户,怎么办,当然,我们可以"手动解决",登录每一台服务器,然后一台一台的创建用户,如果你真的这样干,那么我只能说,算你狠!!!但是,既然我们这篇文章是介绍puppet的,我们肯定会推荐你使用puppet解决这个问题. (2)场景二:…
Airtest 是网易出品的一款基于图像识别和poco控件识别的一款UI自动化测试工具. AirtestIDE 是一个跨平台.多端(Windows.web.android.ios.游戏)的UI自动化测试编辑器,支持自动化脚本录制.一键回放.报告查看. Game:通过图像识别和UI层次结构,支持所有游戏引擎和应用程序,使用方便. Android:通过访问Android原生应用程序,可以发挥重要作用,即插即用. IOS:通过poco可以访问iOS原生元素并找出它们的位置和属性,这使得iOS测试过程变…
testNG集成Allure报告--注释使用说明 前置条件 首先需要下载allure的zip包解压,然后配置环境变量即可(win).allure的GitHub下载地址: 然后执行testn.xml或者是单元测试下的runCase方法,两者任选其一.测试用例执行完成后会在项目目录下生成:allure-results文件夹 最后通过cmd或者IDEA 的Terminal功能,在当前项目下执行如下命令 allure serve allure-results 即可自动打开web页面测报告 下面详解下ja…