自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(67)
  • 资源 (1)
  • 收藏
  • 关注

原创 Linux日常操作命令

作为一名测试工程师,记录日常在Linux环境中经常用到的命令cd (change directory):改变目录Linux的世界里,只有目录和文件,不像在WIndows世界里,有分区(C盘、D盘之类)/ 一个斜杠,代表了根目录,所有目录、文件的起点cat 查看文件内容(直接显示整个文件的内容,如果文件内容很多,滚动鼠标查看吧) cat -n:给所有输出的行从1开始编号 cat -b:对空白行不编号 cat -s:对所有连续的多个...

2022-04-26 10:22:31 1573

原创 论坛注册接口的自动化测试(python+allure)

整个项目工程的结构如下图:common:存放一些公共方法,比如:读取环境变量,读取yaml格式的测试数据reports:allure自动生成,存放测试报告temps:存放临时的测试报告test_register:存放测试数据、测试用例conftest:存放一些装饰器common包有两个py文件,如下图(其中,key为要读取的环境变量名,比如base_url、数据库连接地址等):read_env.py:read_yaml.py:test_register包下有.

2022-01-21 08:53:42 1309 1

原创 TCP协议介绍

传输控制协议,运行在传输层,面向连接的可靠的协议三次握手的目的是为了建立连接(整个过程是由内核实现的)第一次握手:客户端向服务器发送一个请求(告诉服务器我想跟你建立连接),此时发送一个SYN包(同步序列号)和一个ISN(初始化序列号,随机生成的,不能设置为固定值,因为这样容易被攻击者猜出后续序列号,从而遭到攻击)此时,服务器端可以确认客户端的发送能力和自己的接收能力都是正常的第二次握手:服务器向客户端发送一个ACK包(表示发来的数据已确认接收无误),ACK=ISN+1,还有一个服务器端自己的

2022-01-17 20:07:11 1651

原创 Python使用技巧

Python之所以受欢迎不光是因为它简单易学,更重要的是它有成千上万的宝藏库。这些库相当于是已经集成好的工具,只要安装就能在Python里使用。它们可以处理各式各样的问题,无需你再造轮子,而且随着社区的不断更新维护,有些库越来越强大,几乎能媲美企业级应用。认识pippip的全称:package installer for python,也就是Python包管理工具。使用pip可以对python的第三方库进行安装、更新、卸载等操作,十分方便。这些库被放在一个统一的“仓库”里,名叫PyPi(

2022-01-06 10:36:50 131

原创 Requests模块学习

requests参数

2021-12-30 09:30:06 444

转载 HTTP content-type

Content-Type(内容类型),一般是指网页中存在的 Content-Type,用于定义网络文件的类型和网页的编码,决定浏览器将以什么形式、什么编码读取这个文件,这就是经常看到一些 PHP 网页点击的结果却是下载一个文件或一张图片的原因。Content-Type 标头告诉客户端实际返回的内容的内容类型。语法格式:Content-Type: text/html; charset=utf-8Content-Type: multipart/form-data; boundary=someth

2021-12-29 16:08:36 97

原创 Pytest断言assert

常用断言pytest 断言实际上就是 python 里面的 assert 断言方法,常用的有以下几种assert xx :判断 xx 为真 assert not xx :判断 xx 不为真 assert a in b :判断 b 包含 a assert a == b :判断 a 等于 b assert a != b :判断 a 不等于 b异常断言可以使用 pytest.raises 作为上下文管理器,当抛出异常时可以获取到对应的异常实例# 断言异常def test_zero

2021-12-28 16:32:17 1098

原创 Redis缓存测试

缓存的主要作用:缓存是将业务系统的数据处理结果,暂时在内存中保存,并且等待下次访问的时候,立马从内存中取出。 在日常开发场景中,因为服务器的性能或者自身业务对数据处理非常耗时的时候,当发现业务系统的数据请求量很大的时候,频繁的IO和频繁的逻辑处理会导致硬盘和CPU资源的瓶颈出现。 应用缓存系统,就是将这些数据保存在内存中,当有其他线程或者客户端,查询相同的数据资源时,直接从缓存的内存中返回数据。 这样不但可以提高系统的响应速度,同时也...

2021-12-28 14:46:12 2130 2

原创 接口自动化测试框架之——关于接口关联的封装

思路:去掉全局变量(避免每次使用时需要导包),用YAML文件代替保存(对YAML进行读写等操作)。新建一个公共包common,在其下新建yaml_util.py,写入三个方法:读、写、清空import osimport yaml# 读取yamldef read_yaml(): with open(os.getcwd() + '/extract.yaml') as f: value = yaml.load(stream=f, Loader=yaml.FullLoad

2021-12-27 15:44:35 923 2

原创 Python解析YAML里的动态参数

以下是yaml文件内容:- name: $csv{name} base_url: ${get_base_url(base_gzh_url)} parameters: name-appid-seccret-grant_type-assert_str: data/get_token.csv request: method: get url: /cgi-bin/token params: appid: $csv{appid} secret:

2021-12-14 10:39:27 7908 10

原创 Cypress学习

一、环境部署安装Node.js http://nodejs.org/zh-cn/ node npm安装cypress 新建项目目录,例如:D:\aacypress Dos命令进入到该目录,并执行以下命令: npm init --生成package.json文件(文件中name需修改为与项目名称不同,...

2021-05-19 16:31:03 152 1

原创 Docker

安装环境:CentOS71、yum-config-manager \ > --add-repo \ > http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo2、yum install docker-ce docker-ce-cli containerd.io3、启动docker:systemctl start docker4、配置阿里云镜像加速器 ...

2021-04-28 16:57:15 76

原创 Grafana

图形化数据展示(展示任何想要的数据)下载:wgethttps://dl.grafana.com/oss/release/grafana-7.5.4-1.x86_64.rpm 安装:sudo yum installgrafana-7.5.4-1.x86_64.rpm 启动:systemctl start grafana-server.service grafana默认端口号是3000 (netstat -lnp|grep grafana) 使用 1)访问grafana:本...

2021-04-28 16:41:06 168

原创 解决CentOS7共享文件夹不显示的问题

首先确保已经在先虚拟机设置中启用了共享文件夹 进入 /mnt/hgfs ,输入vmware-hgfsclient查看是否共享成功(显示名称意味着共享成功) 安装open-vm-tools并挂载(确保在此之前安装了VMtools):1)yum install open-vm-tools 2)vmhgfs-fuse .host:/ /mnt/hgfs ...

2021-04-28 14:22:44 1676 1

原创 Influxdb时序数据库、Jmeter、Grafana

通过influxdb采集jmeter性能数据,然后通过grafana进行展示安装环境:CentOS7 版本:2.01、下载:wget https://dl.influxdata.com/influxdb/releases/influxdb2-2.0.3.x86_64.rpm2、安装:(方式一)rpm -ivhinfluxdb2-2.0.3.x86_64.rpm(方式二)sudo yum localinstallinfluxdb2-2.0.3.x86_64.rpm3、启动服务:...

2021-04-28 14:02:53 411

原创 Mybatis笔记(入门)

获取参数的值的两种方式: ${}:insert into emp values(null,admin,23,男)statement:必须使用字符串拼接的方式操作SQL,一定要注意单引号的问题#{}:insert into emp values(null,?,?,?)PreparedStatement:可以使用通配符操作SQL,因为在为String赋值时,可以自动加单引号,因此不...

2020-04-13 17:15:00 114

原创 Spring学习(六)AOP面向切面编程

切面:存储公共功能的类叫做切面横切关注点:就是公共功能,非业务代码通知:横切关注点放到切面中去就叫通知,类似横切关注点目标:被通知的对象,要作用到的对象代理:向目标对象应用通知后创建的代理对象...

2020-03-20 17:05:28 78

原创 JDBC(七)考虑数据库事务后的操作

@Testpublic void testUpdateWithTx(){ Connection conn; try { conn = JDBCTools.getConnection2(); //取消数据的自动提交功能 conn.setAutoCommit(false); String sql1 = "update user_table set balance = balan...

2020-03-18 14:27:16 102

原创 JDBC(六)PreparedStatement

PreparedStatement的优势: 解决Statement的拼串、sql问题 可以操作Blob的数据 可以实现更高效的批量操作

2020-03-17 11:26:44 90

原创 JDBC(五)针对不同表的增删改查的通用操作

针对不同表的增删改操作,前提是这些表都位于配置文件中的同一个数据库中的:package com.ztt.jdbc;import java.io.InputStream;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql....

2020-03-16 10:51:00 347 1

原创 Spring学习(五)基于注解的自动装配

前文讲的自动装配是基于XML的,随着项目中的类越来越多,基于XML配置会显得越来越复杂,此时可以使用基于注解的方式来进行自动装配@Component@Controller@Service@Repository写几个类,结构如下:package com.ztt.controller;import org.springframework.stereotype.Cont...

2020-03-15 11:10:24 291

原创 Spring学习(四)引用外部属性文件、自动装配

引用外部属性文件:当bean的配置信息逐渐增多时,查找和修改一些bean的配置信息变得更加困难。这时,可以将一部分信息提取到bean配置文件的外部,以properties格式的属性文件保存起来,同时在bean的配置文件中引用properties属性文件中的内容,从而实现一部分属性值在发生变化时只修改properties文件即可。这种技术多用于连接数据库的基本信息的配置以连接数据库的基本信息...

2020-03-14 16:25:23 136

原创 Spring学习(三)bean的作用域、生命周期、后置处理器

bean节点中scope属性定义了bean的作用域作用域:prototype:多例,在使用时创建对应的对象<bean id="person1" class="com.ztt.spring.Person" scope="prototype"> <constructor-arg value="22" type="java.lang.Integer"></c...

2020-03-14 14:46:39 193

原创 Spring学习(二)FactoryBean工厂bean

Bean有两种类型:①普通bean(即上一篇所讲),②工厂BeanFactoryBean返回的对象不是指定类的一个实例,其返回的是该工厂bean中的getObject方法所返回的对象工厂bean必须实现 org.springframework.beans.factory.FactoryBean接口package com.ztt.spring;import org.springfr...

2020-03-14 11:39:44 136

原创 Spring学习(一)简单配置+依赖注入

1、工具:STS2、配置需要的jar包:spring-beans-4.0.0.RELEASE.jarspring-context-4.0.0.RELEASE.jarspring-core-4.0.0.RELEASE.jarspring-expression-4.0.0.RELEASE.jarcommons-logging-1.1.1.jar3、写一个Person类,里面有na...

2020-03-13 16:26:45 152

原创 Moco学习

Moco是一个搭建模拟服务器的工具1、下载地址:https://repo1.maven.org/maven2/com/github/dreamhead/moco-runner/例如:我下载的是moco-runner-0.12.0-standalone.jar2、新建一个文件夹moco,将上述jar包放入文件夹中3、在moco中新建一个json文件,例如:config.json4...

2020-03-11 11:26:36 225

原创 TestNg使用(入门)

1、@Test注解2、@BeforeMethod 在每一个测试方法运行之前都会执行3、@AfterMethod 在每一个测试方法运行之后都会执行4、@BeforeClass 在类运行之前运行的方法5、@AfterClass 在类运行之后运行的方法6、@BeforeSuit 在类运行之前运行的方法,在BeforeClass之前运行的7、@AfterSu...

2020-03-10 14:30:34 133

原创 GIT学习

下载地址:https://git-scm.com/download 安装:(Windows环境傻瓜式) 验证:桌面点右键,出现Git GUI Here和Git Bash Here图标 点击Git Bash Here,输入:git --version,显示版本号 Git初始化配置(配置用户信息,包括用户名称和邮箱地址,每次Git提交时都会引用这两条信息,说明是谁提交了更新,所以会随更...

2020-03-09 23:07:47 102

原创 基于JAVA的接口自动化测试

用到的技术:HTTPClient:模拟客户端发送请求 Mock:虚拟化平台,模拟一整套开发人员实现的逻辑接口 MyBatis:持久层的技术框架,结合JAVA语言操作数据库 TestNG:单元测试框架 SpringBoot:开发框架,进行接口开发 Git:版本管理工具...

2020-03-09 22:01:36 658

原创 Intellij Idea常用配置

版本:IntelliJ IDEA 2019.3.3进入设置页面

2020-02-25 22:42:06 72

原创 JMeter(一)

JMeter的作用:接口测试 性能测试 代理服务器添加线程组:添加代理服务器:

2020-02-21 19:09:58 107

原创 JAVA反射

1、getFields():获取当前运行时类及其父类中声明为public访问权限的属性2、getDeclaredFields():获取当前运行时类中声明的所有属性(不包含父类中声明的属性)3、getModifiers():获取权限修饰符4、getType():获取数据类型5、getName():获取变量名6、getMethods():获取当前运行时类及其所有父类中声明为publ...

2020-02-21 17:19:53 100

原创 Cookie(二)自动登录

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" session="false"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/T...

2020-02-21 17:19:38 136

原创 Cookie(一)

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" session="false"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/T...

2020-02-21 16:08:16 102

原创 MYSQL(十)循环

分类:while loop repeat循环控制:iterate类似于continue,继续,结束本次循环,继续下一次leave类似于break,跳出,结束当前所在的循环while语法:[标签:]while循环条件 do 循环体;end while [标签];loop语法:[标签:]loop 循环体e...

2019-12-18 16:38:48 118

原创 MYSQL(九)CASE结构

情况1:类似于JAVA中的SWITCH语句,一般用于实现等值判断语法: CASE 变量|表达式|字段 WHEN 要判断的值 THEN 返回的值1或语句1; WHEN 要判断的值 THEN 返回的值2或语句2; ...... ELSE 要返回的值n或语句n; ...

2019-12-18 15:47:17 229

原创 MYSQL(八)函数

函数含义:一组预先编译好的SQL语句的集合,理解成批处理语句1、提高代码的重用性2、简化操作3、减少了编译次数并且减少了和数据库服务器的连接次数,提高了效率区别:存储过程:可以有0个返回,也可以有多个返回,适合做批量插入、批量更新函数:有且仅有1个返回,适合做处理数据后返回1个结果一、创建语法CREATE FUNCTION 函数名(参数列表) RET...

2019-12-18 14:16:58 124

原创 MYSQL(七)存储过程

存储过程和函数:类似JAVA中的方法好处:1、提高代码重用性2、简化操作存储过程含义:一组预先编译好的SQL语句的集合,理解成批处理语句1、提高代码的重用性2、简化操作3、减少了编译次数并且减少了和数据库服务器的连接次数,提高了效率一、创建语法(需在命令提示框中创建)CREATE PROCEDURE 存储过程名(参数列表)BEGIN ...

2019-12-18 09:57:27 91

原创 MYSQL(六)-变量

系统变量:由系统提供,不是用户定义,属于服务器层面1、查看所有的系统变量:show global|session variables;2、查看满足条件的部分系统变量:show global|[session] variables like '%char%';3、查看指定的某个系统变量的值:select @@global | [session].系统变量名;4、为某个系统变量赋值...

2019-12-17 10:41:52 154

原创 MYSQL(五)-事务

事务:一、含义:一条或多条SQL语句组成一个执行单位,一组SQL语句要么都执行要么都不执行二、特点(ACID):A、原子性:一个事务是不可再分割的整体,要么都执行,要么都不执行C、一致性:一个事务可以使数据从一个一致状态切换到另外一个一致的状态I、隔离性:一个事务不受其他事务的干扰,多个事务互相个例D、持久性:一个事务一旦提交了,则永久的持久化到本地三、事务的使用步骤...

2019-12-16 10:44:19 94

visual basic游戏编程21天自学通

很不错的学习游戏编程的资料,希望和大家共同分享

2008-11-13

空空如也

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

TA关注的人

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