自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (4)
  • 收藏
  • 关注

原创 使用allure展示jmeter测试报告

如使用allure展示jmeter测试结果使用allure展示jmeter测试报告jmeter本身自带的测试报告实在有点差强人意,本文介绍如何通过allure展示测试报告实现的效果我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将会带来全新的写作体验;在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;增加了 图片拖拽 功能,你可以将本地的图片

2021-06-06 16:26:11 4601 29

原创 接口自动化--数据库

接口测试可能会需要从数据库获取测试数据或者对测试结果进行数据校验,对日常使用的sql做一个简单的封装。import pymysqlclass MysqlHelper(): def __init__(self,host,port,db,user,passwd,charset='utf8'): self.host=host self.port=port self.db=db self.user=user self.pa

2020-07-13 15:05:55 464

原创 接口自动化--日志管理

日志管理工具类import loggingfrom logging.handlers import TimedRotatingFileHandlerfrom utils.file_manage import YamlManagefrom utils.path_manage import Pathimport osclass Logger(object): def __init__(self,loggername): self.logger = logging.getL

2020-07-10 16:55:06 535

原创 接口自动化--requests封装

为了使用方便 封装已有的requestsimport requestsimport jsonclass BaseHttp: def __init__(self, method, host, timeout=60): self.method = method self.host = host self.timeout = timeout self.url = "" self.headers = {}

2020-07-10 16:19:51 293

原创 接口自动化--Excel工具类

Excel文件主要用来获取相关的接口描述,请求范式,数据,断言等如:Excel 文件读取class ExcelReader: def __init__(self, filename,sheet=0): if os.path.exists(os.path.join(Path().base_path,'data',filename)): self.excel_file = os.path.join(Path().base_path,'data',file

2020-07-10 16:11:18 429

原创 接口自动化--路径管理

此工具类主要为获取各文件绝对路径import osclass Path: def __init__(self): self.base_path = os.path.split(os.path.dirname(os.path.abspath(__file__)))[0] # 获取文件的绝对路径 # dirname :父目录 filename:文件名 def get_real_path(self, dirname, filename):

2020-06-17 10:46:41 278

原创 接口自动化--YAML配置文件

YAML文件YAML 是一种可读性非常高,与程序语言数据结构非常接近。同时具备丰富的表达能力和可扩展性,并且易于使用的数据标记语言。基本语法规则:大小写敏感使用缩进表示层级关系不允许使用 TAB 键来缩进,只允许使用空格键来缩进缩进的空格数量不重要使用"#"来表示注释具体实现mysql: db: test host: 127.0.0.1 passwd: storage port: 3306 user: rootclass YamlReader: def

2020-06-17 10:34:11 1046 1

原创 接口自动化框架

接口自动化测试框架框架选择Python3+pytest+allure整体结构如图所示设计思路配置文件配置文件采用YAML文件,配置信息主要包括:数据库的配置,log配置,用户配置,域名配置,参数配置数据文件数据文件采用excel文件和XML文件,信息主要包括为:接口数据,请求方式,请求参数,预期结果工具类数据库, 文件读写 ,cookie管理,路径管理等...

2020-06-16 14:47:49 826

原创 Python内置函数--callable()

callable()用于检查一个对象是否是可调用的。如果返回 True,object 仍然可能调用失败;但如果返回 False,调用对象 object 绝对不会成功。对于函数、方法、lambda 函式、 类以及实现了 call 方法的类实例, 它都返回 True。eg:class A: def method(self): return 0class B:...

2019-11-25 17:36:28 123

原创 Python3内置函数--ascii

asciiReturn an ASCII-only representation of an object.返回一个表示对象的字符串As repr(), return a string containing a printable representation of anobject, but escape the non-ASCII characters in the string re...

2019-11-20 17:41:12 276

原创 接口自动化测试--参数的传递

最近在写一个车险比价流程的接口自动化,各个接口之间涉及到一些参数的传递与复用,做以下总结:数据源的产生:基本的车辆信息 险种选择车辆信息车辆信息倘若固定下来,接口自动化的意义就不打了,我们要能够根据当前日期选择合适的车辆信息(一般在上年车险至期前60天),数据来源选择:数据库险种选择险种:交强险+商业险 +车船税;商业险又可分为:车损险,三者险…;对于这些信息字段固定,各个车辆的复...

2019-02-02 14:11:04 2778

原创 Mysqls数据库

1,查找薪水涨幅超过15次的员工号emp_no以及其对应的涨幅次数t CREATE TABLE salaries ( emp_no int(11) NOT NULL, salary int(11) NOT NULL, from_date date NOT NULL, to_date date NOT NULL, PRIMARY KEY (emp_no,from_date));s...

2018-05-18 14:32:04 571

原创 linux关于文件打开的命令

cat cat 命令用于连接文件并打印到标准输出设备上,cat -n: 显示行号,空白编号cat -b:显示行号,空白不编号less 分页查看文件,在查看之前不会加载整个文件q: 退出命令b:向后翻一页d:向后翻半页u:向前滚动半页空格键:滚动一页回车键:滚动一行pagedown:向下翻动一页pageup:向上翻动一页more 与cat类似,...

2018-05-14 11:22:49 21827

原创 HTMLTestRunner增加截图功能(附全代码)

对HTMLTestRunner做二次修改,效果图如下: 截图路径需要输出到控制台,使用log或者print均可,路径中必须保证含有screenpicture字段 完整的项目路径github 源码如下:#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 2017/12/28 11:43# @Author : huang

2018-04-26 17:19:52 8746 5

原创 Elastricsearch的安装

Elastricsearch的安装安装拷贝安装包至服务器,rpm -ivh elasticsearch-1.7.0.noarch.rpm创建elasticsearch的数据存储和日志目录mkdir -pv /xor/data4/datamkdir -pv /xor/data4/logchown -R elasticsearch:elasticsearch ...

2018-04-24 17:42:45 824

原创 传送门

基于POM的Python selenium自动化测试 的完整框架源码传送门:Github 我会不断地更新以及添加新的功能。上海–在职—求职 QQ:943298665

2018-04-13 13:53:38 422

原创 Jmeter--线程组

Jmeter之线程组本文主要对该组件中使用的三个属性值作介绍: 线程数 : 以多少个线程(用户)来发送这些请求。Ramp-Up Period:每隔 Ramp-Up Period/线程数 开始一个新的线程,设置为0时同时并发循环次数:每个线程发送请求的循环次数如图所示: 一共创建5个线程,每个线程发送2次请求,如06开始第一个线程,则依次为 06 10 14 18 22...

2018-04-10 09:53:34 128

原创 POM Basepage.py封装

本文用于记录自己二次封装的Selenium中常用的一些页面方法。import timefrom selenium.common.exceptions import NoSuchElementExceptionimport loggingclass Basepage(object): url = None '''' 定义一个基类,封装常用的页面方法 '...

2018-03-28 09:46:18 500

原创 Cenos6.7定时执行python脚本

1. 离线安装requests安装requests所需要的moudle列表如下requestsurllib3idnachardetcertifi手动下载安装即可。2. 编写python脚本import requestsimport jsonimport datetimeurl = IPdate = datetime.datetime.now().s...

2018-03-22 16:59:22 168

原创 HTMLTestRunner报告增加截图功能

本文中使用的HTMLTestRunner的模板为:HTMLTestRunnerCN 。 在模板上增加了截图功能,样例如下: 这里我将测试通过的以截图形式展示,测试失败则显示相应的错误异常。 具体相应的代码模块如下:使用的POM设计模式,封装代码,测试需要截屏时直接调用即可file_path:根据自己的需求填写def get_windows_img(self): ...

2018-03-15 15:39:26 4665 1

原创 python之enumerate()函数

enumerate():用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,具体用法如下:fruit = ['apple','orange','banana']for m,n in enumerate(fruit): print(m,n)0 apple1 orange2 banana...

2018-03-14 15:09:12 283

原创 python之getattr()函数

getattr():从名字上看获取属性值。具体的用法如下:class Person(): age = 14Tom = Person()print(getattr(Tom,'age'))此时的结果为14, 若,该属性不存在getattr(Tom,'name')AttributeError: 'Person' object has no attribute 'name...

2018-03-14 14:56:04 24204

原创 unittest之verbosity

verbosity表示测试结果的信息复杂度,分别使用0,1,2,其具体的含义如下:0(静默模式):仅仅获取总的测试用例数以及总的结果1(默认模式):, 此时在每个成功的用例前面有个’.’,每个失败的用例前面有个’F’2(详细模式):测试结果会显示每个测试用例的所有相关信息...

2018-03-14 14:41:21 1781

原创 Docker Compose

简介:Compose is a tool for defining and running multi-container Docker applications. With Compose, you use a YAML file to configure your application’s services. Then, with a single command, you create an

2017-12-14 10:41:52 260

原创 Dockerfile Demo

一,创建Dockerfile文件# Use an official Python runtime as a parent imageFROM python:2.7-slim# Set the working directory to /appWORKDIR /app# Copy the current directory contents into the container at /appA

2017-12-13 16:19:26 399

原创 PCS命令

当服务器使用Pacemaker做高可用集群时,一段时间后,当使用pcs status查看集群状态时,出现(unmanaged FAILED)错误,使用 pcs resource start/stop servicename 无法正确地开启/关闭响应的服务。 修改方法:如weiwoo1, 执行如下命令:pcs resource manage weiwoo1 查看weiwoo服务状态,若实际状态与

2017-08-25 16:55:27 7364

原创 RobotFramework安装与第一个demo

环境搭建 Python环境:2.7 一 ,Robot Framework: RF框架, 二,wxPython: GUI库,建议手动下载 https://sourceforge.net/projects/wxpython/files/wxPython/2.8.12.1/ 安装至Python2.7目录下 三,Robot framework-ride:图形化界面,用于创建,组织,运行测试的软件

2017-08-04 16:02:07 291

原创 如何使用PyCharm对函数进行测试

最近在学习Python,使用的开发工具为PyCharm,在学习到单元测试时,使用PyCharm怎么都无法实现书籍上的代码,报错如下: 经过查找官方文档,发现通过PyCharm对函数进行测试,需要按照特定的步骤: 测试函数代码为 `def get_formatted_name(first, last, middle=”):if middle: full_name = first +

2017-05-31 16:41:36 13274 1

原创 Docker学习笔记(一)

工欲善其事,必先利其器。 首先我们应了解什么是Docker,用Docker我们可以做什么。为什么要使用Docker。 要学习Docker,我们首先应了解的概念应该是“容器”。简而言之,容器是直接运行在操作系统之上的用户空间,是操作系统的虚拟化。而Docker·就是一个能够把应用程序部署到容器的“引擎”。Docker提供一种高效且有效的途径使程序方便的运行在开发,测试以及实际环境。缩短从代码开发,

2017-05-04 22:19:24 328

原创 第三天

花了一上午又面试了一家,具体名字就不说了,是一个做金融的。对笔试做一下总结,题目很多记不清楚就用类型做标记了。 类型一:简单逻辑推理和数学问题,感觉上过学应该都会。 类型二:仍然是选择题,主要是关于测试理论的,没有标记单选还是多选,不过好多和“”牛客“”上今天的春招题相同,可以再复习一遍 类型三:填空题 ① QM QC QA ② 软件测试策略 ③ 黑盒测试测试用例设计方法 类型四:两大

2017-03-16 21:50:34 198

原创 第二篇

一 测试人员在软件流程中的作用 1) 找出软件中的bug 2)关注用户的需求 3) 确保软件的质量二 一条·bug应包含的内容 编号 标题 内容 模块路径 指派给 抄送给 优先级 严重程度 注释 复现步骤 版本号 附件 严重程度分为 1)最高优先级(Blocker),例如,软件的主要功能错误或者造成软件崩溃,数据丢失的缺陷

2017-03-15 11:58:33 205

原创 第一篇

第一篇 首先先做一套面试题 一 ,简述黑盒测试,如果有完美的黑盒测试,是否仍然需要白盒测试,简述理由? 答案:黑盒测试:从用户角度出发,根据规格说明设计测试用例,并不涉及程序的内部特性和内部结构,只依靠被测程序输入和输出之间的关系或程序的功能设计测试用例。黑盒测试有两个显著特点: 黑盒测试: 从用户角度出发,根据规格说明设计测试用例,并不涉及...

2017-03-14 20:45:11 547

CentOS7.2 Docker离线安装包

CentOS7.2环境下docker-ce-17.06.0.ce-1.el7.centos.x86_64离线安装包,附有各种依赖

2017-12-19

CentOS7.3 Docker离线安装包(内附安装命令)

CentOS7.3环境下Docker version 17.06.0-ce, build 02c1d87离线安装包

2017-12-19

robotframework各个组件

robotframework各个部分安装包

2017-08-04

高级java java 代码

高级javaimport java.io.BufferedReader; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.Socket; public class Client { public static void main (String args[]){ try{ Socket socket =new Socket("127.0.0.1",4703); BufferedReader sin=new BufferedReader(new InputStreamReader(System.in)); PrintWriter os =new PrintWriter(socket.getOutputStream()); String readline; readline =sin.readLine(); while(!readline.equals("bye")){

2015-01-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除