自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(81)
  • 收藏
  • 关注

原创 记录一次完整的性能测试

2. 在加压登录注册接口时,tps一直处于90左右,加压到90后tps就上不去了,后面查询阿里云服务器上,发现有很多的慢查询,原来是在用户注册时,需要先查询这个用户是否注册,而用户量过多,查询很满,采用jmeter中的梯度线程组进行增加,逐步增加线程组,形成大量的请求数来压单接口,最后得出tps的峰值。4. 在调试试卷详情接口时,发现生成的学生分数数据一直不正确,在和开发沟通后,发现是他们在进行生成试卷时。服务端采用的是负载均衡,使用了俩台服务器,一个是4核8G,一个是2核4G,200M带宽。

2023-03-24 17:17:57 325 1

原创 小程序开发---04API简介

小程序官方把API分为了3个大类1.事件监听API特点:以 on 开头,用来监听某些事件的触发举例: wx.onWindowResize(function callback) 监听窗口尺寸变化的事件2 同步 API特点1:以Sync 结尾的API 都是同步 API特点2: 同步 API 的执行结果,可以通过函数返回值直接获取,如果执行出错会抛出异常举例: wx.setStorageSync(‘key’,value)向本地存储中写入内容3 异步 API**特点:**类似于jQvery 中的 $.

2022-12-05 14:51:34 286

原创 小程序开发--- 03组件

小程序中组件的分类主要有以下9类:常用的视图容器类是组件有:1.view : 这是普通的视图区域,类似于HTML中的div,是一个块级元素,常用来实现页面的布局效果2. scroll-view: 是一个可以上下或者左右滚动的区域; 类似与很多软件分类栏的滚动区域3. swiper 和swiper-item: 轮播图容器组件和轮播图item组件; 从用于软件首页中的轮播图,轮播图外层是 swiper容器, 里面是swiper-item,每一个item是一个图片轮播图代码的实现:轮播图常用属性:

2022-12-05 14:50:53 756

原创 小程序开发---02认识宿主环境

小程序依赖于微信提供宿主环境小程序可以借助宿主环境提供的能力,可以完成许多普通网页无法完成的功能,如:微信扫码,微信支付,微信登录,定理定位,etc…等小程序宿主环境包含以下内容: 通信模型,运行机制,组件,API通信模型:通信主体是 渲染层(存放wxml和wxss)于逻辑层(JS脚本); 渲染层和逻辑层之间的通信是由微信客户端进行转发;而逻辑层和第三方服务也是由微信客户端进行转发。运行机制用户在点击小程序后整个启动的过程:页面渲染过程

2022-12-03 09:45:39 430

原创 小程序开发---01小程序初识

本教程主要讲如何开发一个微信小程序,从小程序的注册,开发环境的搭建,基础语法,路由导航,数据请求,分包,组件化等方面详情的接受了小程序开发的一些必备基础知识。本系列文章使用是的B站黑马教程中的小程序开发,文章内容是对视频内容的进行文字化。帮助大家在不方便看视频时,也能够进行学习,写此系列文章也是对自己学习过程都一个记录。本篇教程面对初学者。B站地址: https://www.bilibili.com/video/BV1834y1676P/

2022-11-24 16:21:40 810

原创 安卓APP隐私权限测试--剪切/粘贴板权限

在日常的app测试过程中,除了常规的功能验证外,app端还需要验证隐私与权限合规测试,因为如果app在随意获取用户隐私和权限的话,软件很容易被工商局给强制下线,所以我们测试,在测试过程中还需要注意测试隐私权限方面的内容,下面文章将从剪切板的权限获取测试来切入,深入的了解一下我们如何开发一个用于隐私测试的工具;

2022-09-07 11:34:01 7993 3

原创 Python实现websocket服务端

下面代码是使用python实现websocket后端服务;用于与前端网页进行通信最后可以通过调取send_data方法,发送信息;get_data对发送过来的信息进行解析处理注:如果代码有不理解的可以关注公众号: 测试开发分享 来提问...

2022-07-06 16:59:12 4090

原创 mock(抓包)-测试平台开发-1.平台介绍

在日常的测试工作中,常常会遇到下面情况:针对以上测试痛点; 我们可以开发一款在web端运行的抓包工具,在web端进行抓包项目数据,并进行修改请求,修改响应,模拟响应, 串改域名的方式来解决测试痛点。明白了,要解决什么后,我们就该选用技术来实现上述功能了;经过调研网络上的各种工具后,最后选用了mitmproxy来搭建平台项目的底层抓包;同时mitmproxy是需要结合python来二次开发的,所以服务端接口框架选用了django-rest-framework 做为后端服务; 而前端这里采用的Vue2做为前端

2022-06-24 14:36:40 1919

原创 win操作iOS UI自动化(tidevice+appium)

1. 安装 tidevice使用命令 pip install tidevice2. 使用数据线连接手机,打出命令 tidevice查看连接状态和udid 若有信息返回则连上3.输入启动命令,启动wda包tidevice -u [设备 udid] wdaproxy -B [wda 的 bundle Id] --port 8100(可以通过 tidevice applist 来查看wda包的bundle ID)4.打开appium 客户端(注意,版本需要大于1.20.0)5.输入连接内容进行

2022-04-13 18:13:42 7337 3

转载 首次推送Git教程

设置电脑git设置, 输入完 git init 创建完git项目后,进入 config文件中; 添加下面文档:[user]name = XXemail = [email protected]输入你的账号名和email 文件推送步骤:https://zhuanlan.zhihu.com/p/152332683

2022-02-21 18:16:35 340

原创 appium报错 Stderr: ‘Security exception: Permission Denial: starting Intent { act=android.inte.....解释

报错信息:An unknown server-side error occurred while processing the command. Original error: Cannot start the ‘com.vivo.compass’ application. Visit https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/android/activity-startup.md for tro

2022-02-15 15:52:43 1597

原创 python setattr方法动态为类创建方法

setattr函数官方的解释是 用于设置属性值,该属性不一定是存在的。其实它还可以为类设置 方法/函数使用方法: setattr([类名称], [需要创建的方法名],[方法的引用-方法所在的内存地址])示例:下面示例为a类创建了一个类变量cc和类方法ddclass a(): name = "我是name值" def bb(self): print("我是bb方法")def make_def(): def tool(self): print("我是make——def方法")

2022-02-14 15:23:40 1049

原创 Vue项目的创建

前置: 电脑中安装好 npm安装 vue-cli vue的脚手架npm install -g vue-cli 全局安装使用脚手架构建 vue项目准备好项目文件夹,运行命令 vue init webpack 项目名称全部保持默认,按回车即可安装需要的插件,如vuexcd 项目名称npm install vuex --save创建需要的文件,如 views, store 文件夹启动项目npm run dev...

2022-01-23 14:41:01 380 1

原创 Mac虚拟机实现ios UI自动化教程-最新版本(MacOS 12.1,ios15.1)

在vm虚拟机中安装Mac 系统, 主要分为几步: 1. 下载软件,vm,mac镜像 2. 解锁vm(使其能够安装mac),需要安装软件 unlocker :[点击此处安装最新版本](https://github.com/BDisp/unlocker)(旧版本可能出现解锁失败) 3. 安装mac OS 具体安装操作,可以参考下面链接: (这类安装其实还是下一步,下一步即可安装)

2022-01-08 12:48:06 4229

原创 Maven的基础详解(安装,使用)

下载前往官网点击download 跳转到下载页面,在files中选择对应版本进行下载;此处是win电脑,下载的win版本下载完成后,是一个压缩包,将文件进行解压后,配置环境变量即可使用目录介绍:bin 可运行指令boot 类加载器conf 配置文件lib 依赖的jar包环境变量:Maven运行需要JAVA_HOME 和MAVEN_HOMEJAVA_HOME 的配置在此不做介绍,下面讲解配置MAVEN_HOME。打开电脑的高级系统设置-》环境变量找到maven的安装目录,将路径配

2021-12-27 17:11:05 234

原创 一篇文章入门django开发 (测试平台)

因为当前测试行业内卷严重, 面试难度逐年递增,很多测试同学都在学习开发技术,但不知道如何入门, 特此用一篇文章带领大家入门django,想让大家知道 简单的开发并不难......

2021-12-02 16:37:32 1463

原创 webpack- loader 基础使用(关于css文件加载)

webpack 本身是用来转换js代码进行打包的;但很多其他文件,如css文件不支持依赖; 需要这时候需要用到loaderloader的使用在main入口中引用css文件;是无法直接打包的

2021-11-27 11:54:05 509

原创 webpack-配置

可以通过配置webpack.config 文件来直接打包1.使用npm init生成一个文件包填写完成后会生成一个json文件添加webpack.config.js 文件

2021-11-26 13:02:41 332

原创 webpack的基础使用

webpackwebpack是一款前端模块化打包工具,强调模块化开发管理.webpack依赖于node; 需要先安装node;使用命令: npm install webpack -g 安装查看是否已安装 webpack --version

2021-11-25 11:12:16 559

原创 pycharm专业版 没有试用30天按钮,需要登录的解决方案

pychram在2021年9月30日之后的版本, 需要用户登录后才能开启试用; 以此来抵制盗版(虽然没有什么用…)新版本是长这样:没有了之前的Evaluate for free 选项;进入的解决方案:注册一个JetBrains 帐户;注册地址: https://account.jetbrains.com/login?_ga=2.268514929.1239888694.1637728385-1574465557.1637728385填写邮箱地址后,在邮箱中进行下一步操作;邮箱发送可能有

2021-11-24 13:26:14 34225 9

原创 VUE组件化详解

vue组件化相关知识点:组件的使用大致分为: 创建组件构造器->注册组件->在html中使用组件1.构造组件①: 普通方式构建//--js代码中编写 // 1.创建组件构造器- 在template中写html模板代码 const conc = Vue.extend({ template: ` <div> <h2>我是标题</h2> <p>我是内容</p> </div>

2021-11-19 15:56:45 816

原创 python-装饰器(一听就懂)

想要了解python 的装饰器,需要先了解python的函数 的一些特性函数特性1.函数可以作为变量进行传递2.函数可以作为参数进行传递3. 函数可以作为返回值; 函数的返回值 可以是一个函数(内存地址)4.函数间可以嵌套,并且作用域只有函数内可以访问# 其实加了装饰器后,执行的是装饰器函数,该函数本身并不会在此处被调用比如下面示例,我调用了a函数,但a函数并没有被执行,而是执行了logo函数一个函数加了装饰器后,在调用时 调用的是装饰器函数,而不是该函数当了解了这个特性后,我

2021-10-25 17:58:34 108

原创 python-获取当前目录/上级目录/上上级目录...

获取文件在其他人使用你的代码时,常常因为目录层级的问题为无法运行程序…(所以在引起其他模块文件时,尽量采取绝对路径的方式导)python官方建议尽量的使用绝对目录,而不是相对目录…获取当前文件的绝对路径:os.path.abspath(__file__)可以得到文件运行所在的绝对路径,之后使用字符串切割即可得到 上级目录;上上级目录,上上上级目录;如:数据切割: current_path = os.path.abspath(__file__) a = current_pat

2021-10-13 22:34:48 4620 1

原创 前端JS-页面延迟刷新

延迟刷新页面延迟几秒刷新可以使用setTimeout()函数; setTimeout函数作用是定时在几秒后执行函数或者js代码;setTimeout('document.location.reload()',2000)上述代码就是在 2秒后执行刷新;将代码封装为一个函数,在需要的地方调用,即可完成延迟刷新的效果...

2021-10-08 11:19:39 1419

原创 各服务常用 启动,重启,停止命令---liunx(测试)

1.JenkinsJenkins服务命令重启 Jenkinsservice jenkins restart启动 Jenkinsservice jenkins start停止 Jenkinsservice jenkins stop2.禅道启动:/opt/zbox/zbox start停止:/opt/zbox/zbox /stop

2021-09-14 19:42:05 163

原创 性能测试流程整理

性能测试流程一:熟悉产品业务流程 需求文档;了解系统架构,中间件,数据库,服务器,等配置信息;二:由项目经理或产品提供一个压测指标;进行测试场景的设计;三:使用jmeter等压测工具编写测试脚本,配置压测环境,部署性能监控服务等操作四:执行性能测试脚本,进行压测五:分析压测结果,输出性能测试报告问:如果没有给出性能测试指标,你该如何开展性能测试?答:一般此问题可以通过针对俩种项目做解答;一:老项目,已经上线过的项目,可以通过部署监控系统,埋点,nigix中间件等来跟踪用户数,获得在线用户

2021-06-24 17:50:37 574

原创 算法解集--归并算法

#python解法def zuhe(erwei_list): # 传入的是二维数组 类似 第一次[[1],[4],[6],[2]] # 返回 [[1,4],[2,6]]同时也是第二次传入的数据 #当最后返回的[[1,2,4,6]]二维数组的长度为1时,迭代循环结束 new_erwei_erwei = [] #当传入的数据为奇数时,需要最后一位数字不加入计算 if len(erwei_list)%2 !=0 and len(erwei_list)!=1: new_erwe

2021-06-19 09:01:32 96

原创 Yaml-学习与使用

Yaml是一种文件格式python中使用yaml需要安装Yaml模块 : pip install pyyamlyaml格式:dic1: name: zff age: 15dic2: name: ttt age: 98dic3: "测试数据"list1: - 1 - 2 - 3 - 4用冒号+空格 : 代表对象/字典用 岗+空格 - 代表列表使用yaml 需要导包使用load方法import yaml# 打开yaml文件file = open('tes

2021-06-18 15:33:35 345

原创 python--使用cmd运行文件报错 No module named....解决方案

在文件顶部加入此代码import os.pathimport syscurPath = os.path.abspath(os.path.dirname(__file__))rootPath = os.path.split(curPath)[0]sys.path.append(rootPath)

2021-06-18 11:24:02 814

原创 pytest+allure 使用记录

import timeimport allureimport pytestimport os# 1.pytest将在当前目录及其子目录中运行test _ * .py或* test.py形 式的所有文件。# 2.以test_开头的函数,以Test开头的类,以test_开头的方法。所有包 package都要有__init_.py文件。@allure.feature('我是主功能')class TestCase(): def test_01(self): print("

2021-06-18 10:42:36 134

原创 mysql-索引使用记录

创建索引:在创建表时可以直接添加关键字用于添加表中索引CREATE table test33(id int(20) ,username VARCHAR(110),projectid INT(20),usercode VARCHAR(128),PRIMARY KEY (id),UNIQUE INDEX(projectid),INDEX(usercode))PRIMARY KEY 是添加主键的; UNIQUE INDEX 为唯一性索引 ;INDEX是添加普通索引UNIQUE:可选。表示索引为唯一

2021-06-17 18:10:24 103

原创 jenkins远程触发构建

项目中当想远程进行对jenkins项目的构建时,可以使用下面请求:http://IP:端口/job/项目名/build?token=构建密码&cause=书写构建原因(cause若无则不填写)如: http://192.168.0.0.1:8081/job/测试项目/build?token=123456其中token在项目中设置:...

2021-06-15 13:33:25 399

转载 jenkins没有执行shell权限问题

在Jenkins执行完打包,执行shell脚本会报Permission denied原因:执行jenkins的用户权限问题执行下面命令可以看到Jenkins以哪个用户操作vim /etc/sysconfig/jenkins如下:执行账户是jenkinsType: stringDefault: “jenkins”ServiceRestart: jenkinsUnix user account that runs the Jenkins daemonBe careful

2021-06-12 18:21:19 911

原创 jenkins节点配置与持续集成

在系统管理中找到 节点管理-选择新建节点填写节点服务器的工作目录----标签用例识别节点----用法填写,只需要绑定到此机器--------启动方式填写 通过java web方式启动-------------其中当下图指向报错时,是因为jenkins的代理端口没有开放需要在Configure Global Security中设置固定的连接端口,并将此 端口在服务器上对外开放启动节点:点击箭头这些的 jar包与jnlp文件 进行下载到你的节点电脑的 工作目录中并使用图片中的命令进行启

2021-06-12 16:47:25 1137 1

原创 搭建接口自动化测试 jenkins+ant+jmeter (liunx)-1.搭建java+jenkins

本文使用到的工具或环境: liunx服务器,java运行环境,jenkins,ant,jmeter**1.安装ddk**首先执行以下命令查看可安装的jdk版本:yum -y list java*选择一个版本安装 yum install -y java-1.8.0-openjdk-devel.x86_64等待安装即可安装完成之后,查看安装的jdk版本,输入以下指令:java -vers...

2021-06-12 11:03:34 89

原创 python列表[:] [::]的使用

几道常见的(:)切片的使用L = list(range(100))取第一到第三个元素:____取倒数第二个元素____取后十个元素_____4)取后十个元素并倒序返回___把L复制给L1_____题解:1.取前三直接使用切片 L[0:2] (注意,列表的其实下标为0)2:L[-2]3: L[-10::]4: L[-10::-1] 其中后面的冒号 -1代表取值的步长,从后向前取,一次取1个5:: L1 = L[:] 直接使用L1 = L 是只是将L1的内存

2021-06-11 09:36:20 1600 3

原创 Layui--layer的弹窗的使用

Layui一款开源的前端框架,UI样式简洁大方layer弹窗使用简单,无需自己写css样式,可以直接使用;使用方式:在此推荐下载Layui源码包的方式使用:下载Layui源码包: https://www.layui.com/下载完成后,将文件解压到项目中在需要使用的HMTL文件中 ,引入css文件和js文件<link rel="stylesheet" href="/static/layui-v2.6.8/layui/css/layui.css"><script src=

2021-06-09 10:49:46 704

原创 Djano+apscheduler实现接口自动化平台定时运行

其他—目前遇到的报错:1.Job identifier (test_jobs) conflicts with an existing job此错误是因为工作id和数据库中现存在工作id一致导致的,需要修改id名称为别的即可;2:django.db.utils.OperationalError: database is locked初步估计是因为开启的job过大,导致连接池不够,改了一种实例化调度器的方式后,可以解决,并且加一个misfire_grace_time属性值将这个值设置大一下,增加容错机

2021-06-06 09:36:20 1846 2

原创 docker的使用---测试开发

镜像和容器的关系: 一个镜像产生(映射)多个容器docker对测试能做什么?**可以搭建测试环境搭建各类基础环境搭建测试执行环境**docker 使用的关键技术名称空间:Namespace (使用liunx的名称空间,如网络命令等可以隔离各个容器)联合文件系统 Cgroups 隔离资源docker常用命令列出当前所有的镜像: docker images筛选镜像: docker images|grep mysql拉取镜像: docker pull 镜像名称(docker p

2021-04-26 15:18:52 134

原创 Mockoon+LightProxy 模拟数据-代理转发-截获修改数据

内容学习来自: https://mp.weixin.qq.com/s/C9HNJk6Rfeysclc-7PFC7g**Mockoon:一款可以mock数据的工具**,使用简单,在body中直接模拟接口数据下载地址: https://mockoon.com/#download填写接口地址,请求方式,响应数据后,可以直接在本地启动该服务,默认端口为3000;Mockoon还可以进行接口代理转发转发完成后,所有指向你服务器的请求都会转发到代理服务器上,如:别人访问你的接口http://192.1

2021-03-31 15:38:56 1523

空空如也

空空如也

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

TA关注的人

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