自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(182)
  • 问答 (1)
  • 收藏
  • 关注

原创 【FLASK/HTTPS】使用本地证书实现HTTPS://FLASK

pip安装flask-sslify。

2023-04-28 10:47:05 399 1

原创 【网络原理】基本原理篇:I/O

I/O的原理

2022-08-28 12:02:51 708

原创 【markdown 使用】

1212

2022-08-19 15:46:47 186

原创 【性能测试-03】 - 性能测试场景的分类和意义

性能测试场景的分类和意义基准场景基准场景是指单线程或少量线程对单接口进行测试,然后将测试结果作为基准数据,为系统的优化及后续的测试流程提供决策数据,有人认为基准测试不是在高并发情况下做的,不算性能测试,但是其实是性能测试中重要的基础步骤,可以验证测试脚本和测试参数的正确性,同时也可以验证脚本数据是否可以支撑重复性数据的测试还可以通过少量线程访问系统获取结果数据作为对比参考的基准,或者根据测试结果分析可能成为系统瓶颈的场景,这样的脚本会成为自动化脚本,巡检等单接口负载场景通过模拟多线程对单接口进行负

2022-04-29 12:13:25 2548

原创 【性能测试-03】 - 如何指定性能测试目标

文章目录引言定制计划衡量指标TPS响应时间报错率性能测试指标分析1、以衡量系统处理能力为核心目标的性能测试时间维度服务维度引言在测试执行过程当中,并不清楚现在测试到的结果到底能不能满足活动的需求,本次需求涉及到的模块和接口也不清楚,这种性能测试方式,就是没有做性能测试目标分析,虽然说做了性能测试,但是基本是无效的性能测试,因为:没有做目标分析的性能测试,会与真实的活动场景相差甚远例如在使用前的测试和使用中的实际情况完全不一样,原因因为一个低访问量的接口没有纳入测试范围,性能测试目标是性能测试的重要先决

2022-03-30 12:03:20 760

原创 【性能测试-02】 - Nginx在系统架构中的作用

Nginx在系统架构中的作用Nginx作为业内最常用的代理服务器,较为详细的记录了用户的访问数据,而且在分布式部署性能优化方面页发挥了积极作用,所以说到性能测试,Nginx是不得不提的中间件Nginx两个重点概念代理正向代理和反向代理的作用是什么,什么是代理呢?举个例子,比如说你想去某公司做测试,但是你无门,但是小王正好认识对方的测试主管,就把你的简历推荐进去,小王就是代理正向代理正向代理的特点就是你非常清楚你要去哪,访问什么服务器,但服务器不关心你的出发地是哪里,它只关心你从哪个代理服务器来的

2022-03-24 14:38:04 3444

原创 【性能测试-01】 - 开篇

性能测试?1、只会使用测试工具(jmeter,lr),但执行不规范2、不会定制有效的性能测试目标3、不会定位和分析测试结果价值?性能测试的真正价值不是通过工具完成一份报告,而是通过对过程和结果的分析找到症结,帮助团队有效提升产品性能。比如提升多少TPS,降低了多少响应时间,节约了多少硬件资源成本,不止玩转工具,需要学会定制性能测试方案,如何监控数据,迅速定位问题。体系化性能测试有些标准是非常主观的,网上的很多推广公式,二八原则之类的,如果不结合业务实际,盲目学习,认为是性能测试的标准打开方式,

2022-03-22 17:19:34 569

原创 数据库性能测试mysql篇

数据库性能测试mysql篇主要内容MySQL数据库介绍MySQL数据库监控指标MySQL慢查询工作原理及操作SQL的分析与调优方法MySQL索引的概念及作用MySQL索引的工作原理与设计规范MySQL存储引擎MySQL实时监控MySQL集群监控方案MySQL性能测试用例准备使用jmeter开发MySQL性能测试脚本执行测试待续。。。...

2021-04-24 16:50:51 142

原创 性能测试之数据库架构设计

数据库架构设计数据库性能测试的目的与范围主要内容:数据库主从同步的工作原理数据库分库分表的设计方法当数据库存有大量数据的时候,就要考虑分库分表,因为单表存储数据量过大的时候,数据的操作,写入,更新速度都是非常慢的目的发现数据库相关的所有性能瓶颈范围Sql语句-慢查询等资源使用率数据库架构的合理性数据库的性能指标数据库常用架构一主多从就是我们常说的读写分离Master主要复制数据的写入,其实是写入和更新,所有对磁盘产生影响的数据,为什么没有说删除,因为在项目实际应用中

2021-04-24 16:11:07 245

原创 Jmeter性能测试应用篇

Jmeter性能测试应用篇Jmeter的组成测试计划Jmeter的组上层组件线程组用于控制多线程并发,控制虚拟用户数断言预期结果和实际结果进行比对,看是否正确,但是在性能测试中不推荐进行断言,因为性能测试重点不在准确性判断定时器用于操作线程时,设置停顿多尝时间,什么条件下停顿,集合点等监听器监听器是比较重要的一部分,可以调试我们的脚本,和监控一些资源配置元件配置元件在做网络并发时比较重要,在做真正的并发之前需要有那些配置信息,可以自定义一些变量,例如mysql的连接信息后置处理

2021-04-05 15:06:01 267

原创 常用性能指标理解

性能指标事务什么是事务?事务是从客户端发起的一个或多个请求(这些请求组成一个完整的操作),到客户端接收到从服务器返回的响应,必须是一个完整的操作才叫一个事务,什么情况下是不完整的呢,例如银行转账,中国银行账户的前转到招商银行,第一步从中国银行发起请求,中国银行扣款,然后到农业银行,农业银行把钱加上,返回给中国银行,钱加上了,中国银行在更新数据库状态这是正常的,但是中间可能出现问题,比如我发一个请求到中国银行,说我要转账,然后中国银行给招商银行发个请求,100快转到招商,招商说好,我收到了,把钱加上了,这

2021-04-02 20:28:46 173

原创 性能测试工作流

性能测试工作流Step1:需求分析需求分析是做什么的呢?主要让你知道这个项目是做什么的,用户如何操作的,那些事重点,那些是主要的业务流程,系统场景Step2:性能指标制定对性能测试有一些了解的人都知道,有一些吞吐量,TPS等一些指标,就是在这个环节来定义的,为什么要定义,因为我们要有一个目标,所有的应用软件,总归会又一个性能瓶颈,100个并发没问题,一千一万个呢,所以我们要定义,例如,我们满足1000个并发就ok了,满足我们现阶段性能的期望值,总的来说,就是确定什么样的标准能满足我们现阶段的期望值

2021-04-02 18:08:09 235

原创 性能测试的测试范围

性能测试范围负载测试通过逐步加压得方法,达到既定的性能阈值的目标,阈值的设定应是小于或等于某个值,例如CPU使用率小于等于80%压力测试通过逐步加压得方法,使得系统某些资源达到饱和,甚至失效的状态,就是什么条件下能把系统压崩溃并发测试在同一时间内,多个虚拟用户同时访问同一模块、同一功能、通常的测试方法是设置集合点容量测试通常指数据库层的,目标是获取数据库的最佳容量能力,又称之为容量预估。具体的测试方法为在一定的并发用户,不同的基础数据量下,观察数据库的处理能力,即获取数据库的各项性能指标,例

2021-04-02 16:29:11 2731

原创 零基础入门进阶python 流程控制语句-03

文章目录流程控制语句顺序语句分支语句概念书写形式:书写规则等值判断多分支语句BMI指数计算器循环语句流程控制语句什么时流程控制语句呢?其实就是我们程序执行的顺序,在python中对程序执行共有三种形式顺序执行分支语句循环语句顺序语句所谓顺序执行就是我们程序按照事先编好的顺序,从上到下依次执行,完成代码的运行,叫做顺序执行分支语句概念分支语句,就是我们所谓的选择,例如想染头发,是要红色还是绿色,这里我们伴随这选择,在python中称为分支语句书写形式:if 判断条件:条件成立执行

2020-07-15 01:04:30 136

原创 零基础入门进阶python 常用函数使用-02

文章目录print函数format函数制表符与换行符删除空白查找字符串字符串大小写转换字符串替换小结print函数什么时函数?函数就是python事先定义好的功能,每个函数都有对应的功能,使用方式:函数名(参数)print用于向控制台输出字符串实例:print(“hello world”)、print(3)format函数format()函数支持数字格式化示例:format(1234.5678,“0.2f”)#保留小数点两位示例:format(1234.567,’,’)#千分位分隔符示

2020-07-15 00:29:57 168

原创 零基础入门进阶python导学(初识python)-01

文章目录python导学python版本基础语法面向对象python特点pythonic易于学习万金油印象python导学学习python之前,我们对python做一个简单的了解,大家可见,这几年来,python的热度直线上升,是编程界名副其实的“大网红”,大家会造成一个误区,以为python只是近几年新兴流行的语言,流行是真的,新兴是假的,最早追述的上世纪90年代初,其实是非常有积淀的,随着这几年大数据和人工智能的流行,python才真正意义上成为了主流语言,在国内有俩家公司,他们的产品是以pytho

2020-07-14 00:45:13 2392

原创 selenium selenium 读不到标签中的文本解决方式

隐藏:maxIn = browser.find_element_by_css_selector(’#window > table:nth-of-type(2) > tbody > tr:nth-child(2) > td:nth-child(3)’).get_attribute(‘innerHTML’)#承诺到窗口最多次数说明ye_or_no = browser.find_element_by_css_selector(’#window > table:nth-of-typ

2020-07-04 14:18:19 3236

原创 selenium 无浏览器界面执行自动化操作

import osimport syssys.path.append(os.getcwd())pPath = os.path.abspath(os.path.dirname(os.getcwd()))from myTools.dealExcel import dealExcelfrom keyWords.actionMethod import ActionMethodfrom config.serverInfo import BASEURLfrom selenium import webdri

2020-06-13 14:45:16 883

原创 windows 切换pip源

打开appdata文件夹,在资源管理器的地址栏输入%appdata%后回车新建一个pip文件夹,在pip文件夹里面新建一个配置文件pip.ini配置文件内容[global]timeout = 6000index-url = https://pypi.tuna.tsinghua.edu.cn/simpletrusted-host = pypi.tuna.tsinghua.edu.cn阿里云 http://mirrors.aliyun.com/pypi/simple/中国科技大学 https:/

2020-05-23 10:51:31 171

原创 python 解决unicode转码问题

str = ‘\u4eac\u4e1c\u653e\u517b\u7684\u722c\u866b’方法1 使用unicode_escape 解码print str.decode(‘unicode_escape’)print unicode(str, ‘unicode_escape’)方法2:若为json 格式,使用json.loads 解码print json.loads(’"%s"’ %str)方法3:使用evalprint eval(‘u"%s"’ % str)方法4:使用python

2020-05-09 19:22:19 3734

原创 python安装配置

2020-05-05 12:37:54 324

原创 面试到cookie和session的区别应该如何回答

http协议是无状态的,当使用或开发一些对状态有要求的接口时,cookie和session弥补这一块能力cookie第一,cookie只是请求头当中的一个字段,他跟http协议的请求头中的其他字段并没有太大的区别,特别放在4层tcp中来看,http的请求头和请求体同样没什么区别第二,浏览器对cookie做了默认的支持,同时也限制了cookie,比如同源策略,同源策略时浏览器基于安全角度的一个...

2020-04-25 13:04:51 267

原创 flask开发小程序登陆授权思路回顾

首先在我们的web层里边,controllers里边新建了api的一个包,里边有__init__.py文件,这里是统一注入我们api的标识,里边有蓝图,引入到我们www里统一注册,统一资源api,api这个目录是我们小程序使用的之后我们新建member,有两个方法,一个是授权注册登陆,一个是是否注册,检验注册的原理是,当我们第一次进入小程序时候,前端应该显示授权登陆,因为没有微信授权该小程...

2020-04-23 14:34:32 408

原创 flask-发现服务器时间和当地时间不一致 解决重置当前时间

1.设置系统时间为中国时区并启用NTP同步yum install ntp // 安装ntp服务systemctl enable ntpd // 开机启动服务systemctl start ntpd // 启动服务timedatectl set-timezone Asia/Shanghai // 更改时区timedatectl set-ntp yes // 启用ntp同步ntpq -p ...

2020-04-16 13:09:26 1905

原创 flask-拦截器加重定向解决不同登陆状态限制登陆页访问

先说一下几个登陆状态的逻辑问题1、如何做登陆状态的效验?通过cookie效验是否存在,如果存在,则为登陆状态,否则为非登陆状态,如下图看,响应中添加cookie,并且存在cookie加密规则,因为cookie储存在客户端,相比session保存在服务的,相对缺少安全性,但是session面对多服务器情况下要一致的问题处理很麻烦,所以有加密规则的cookie相对很好使用,毕竟不存在绝对安全,只存...

2020-04-13 12:05:54 917 2

原创 flask--前端样式无法显示问题,解决思路

今天写flask。无论咋整,样式就是不显示看了资料,得到解决方案思路:一步步排查这是我写的登陆前端页面,从这里可见继承common下的这个公共模板找到公共模板,可见我们的样式加载在这里那么可见,一定是href请求中发生错误导致无法加载成功检查统一路径管理,我们前端请求地址是用的这个方法,传入了个path,对static路径进行拼接,从而加载static下的css文件我们吧前端p...

2020-04-11 14:58:30 5120 1

原创 app性能-FPS

FPS是app性能衡量流畅度的指标,指的是每秒帧数,一般每秒60帧是流畅,也就是每帧16ms,如果每帧的执行时间大于16ms,我们可以认为有卡顿的现象出现我们会看到一根绿线,这跟线就是fps的基本值,代表着16毫秒,每个柱形图都是每一帧的耗时,如果你发现你的很多帧在绿线上边,你就可以发现,这里的流畅度已经出现问题,打开我们的浏览器这里页面就会有卡顿出现,手动测试也可以感受到过度渲染:...

2020-04-08 15:13:21 820

原创 app性能-内存

内存数据获取命令adb shell top内存我们需要关注两个点1、VSS - Virtual set size 虚拟耗用内存2、RSS - Resident set size 实际使用物理内存命令效果此命令是动态监控命令PID是所有进程ID号CPU% 就是cpu使用率VSS 和RSS上边说过Name 程序名脚本实现部分:命令采集:adb shell top -n ...

2020-04-08 12:55:34 250

原创 app性能-电量测试监控

电量的重要,对于移动端来说的重要性不用过多阐述,相信大家都能认知,流量费一些,大家还可以接受,你这产品要是得和充电宝捆着玩,没人能受的了,所以我们必须保证耗电量的稳定获取电量命令adb shell dumpsys battery吃饭。。。...

2020-04-07 17:48:07 599 1

原创 app性能-流量监控

流量对于用户来说,是一种资源,所以我们必须保证我们的app在正常情况下没有异常流量的出现,如何对流量进行监控呢?1、获取进程ID命令adb shell ps | findstr packagename2、获取进程ID的流量adb shell cat/proc/pid/net/dev我们可以看到流量数据,主要注意receive和transmitreceive指的是当前app接收的...

2020-04-07 17:40:43 673

原创 关于写入csv文件中存在空行问题解决

写入csv:with open(birth_weight_file,'w') as f: writer=csv.writer(f) writer.writerow(birth_header) writer.writerows(birth_data) f.close()这种写法最终的结果就是生成的csv文件每两行中间都有一行空白行,解决办法就是写入后面加上newli...

2020-04-07 12:53:06 1595

原创 app性能测试-cpu监控

CPU是移动设备非常重要的资源,我们必须保证app在使用过程中是一个稳定的状态,因此,我们需要对cpu的状态进行监控监控cpu的指令adb shell dumpsys cpuinfo | findstr packagename我们在监控过程中,需要定时采集,因为我们需要模拟用户真实的使用场景,加入说对于浏览器,我们需要搜索10个词,那么我就要监控在搜索10个词过程中整个cpu的状态,那么我...

2020-04-07 12:51:34 830 1

原创 app性能测试-启动时间监控

环境搭建没什么说的,我用的是python3+pycharm,jdk和sdk的android环境,总体就是用python写一个脚本来对app执行指定的冷热启动,并且记录下启动时间的数据,并对数据进行一个汇总分析所以在思路上,分为启动app脚本和操作app脚本启动脚本分为启动app,关闭app,获取启动耗时命令,也就是三个方法操作脚本分为单词操作,多次操作和写入csv操作# -*- codi...

2020-04-07 10:18:52 512

原创 adb :error: cannot connect to daemon-- 5073端口号被占用解决

今天连接adb又出现了经常出现的问题1、查看占用的端口号的进程netstat -aon|findstr 50372、发现10152占用了,查看10152进程的程序tasklist|findstr "10152"3、结束程序taskkill /f /t /im nox_adb.exe4、再次连接设备...

2020-04-06 14:46:51 1624

原创 接口测试概述

文章目录接口测试要点检查数据的交换传递和管理过程系统间的相互逻辑依赖关系本质理解接口测试要点检查数据的交换为什么要检查交换?接口接口,一个接字就涉及到别人发送过来,我接到,我发出去,就涉及到数据交换的这么一个概念,交换前长什么样,交换后长什么样,是否符合规则传递和管理过程接口传完数据以后呢,其中包含一些比较重要的信息,比如说会有一个结果的传递,从前端把数据传过去之后,后端进行逻辑效验,比...

2020-04-04 20:30:35 110

原创 接口测试分类理解记录

文章目录业务功能测试正常场景异常场景边界分析测试业务规则的边界分析输入输出参数边界值分析参数类型值的大小,输入值的取值范围参数字符串的长短,空字符串,最大最小值+-1的情况参数里包含特殊字符参数组合测试异常情况测试幂等并发测试事物测试分布式测试环境测试大数量测试同时处理大批数据测试DB数据量很大时,测试DB操作性能测试响应时间吞吐量并发数服务器资源使用率安全测试敏感信息加密前后端数据传输加密?日志...

2020-04-04 17:52:41 226

原创 关于测试平台切换操作系统工程目录思路及ModuleNotFoundError

今天设计测试平台,发现切换操作系统时,会因为工程目录问题导致无法找到模块和配置文件,则在flask—config配置中添加BASE_PATH一项,设置为系统,进行if判断即可,还记录一个找不到模块的问题,ModuleNotFoundError先加入环境后,在进行导入即可...

2020-04-03 18:45:52 134

原创 appium常用的api

滑动屏幕driver.scroll(element1,element2)dot_0 = driver.find_element_by_id(“dot_0”)dot_2 = driver.find_element_by_id(“dot_2”)driver.scroll(dot_2,dot_0)获取当前活动的activitydriver.current_activity将app置于后台运...

2020-03-31 21:14:34 378

原创 梳理appium自动化,关键字模型数据驱动模式思路

今天重写了一下appium得自动化框架,去除po模型,采用关键字模型,使用数据驱动模式提高自动化覆盖效率,让自动化过程更加依赖框架,将使用难度降到低点。框架结构如下:串一下大体思路,首先是appium服务这里,使用命令行封装,运行命令启动appium server以及启动过程中获取到driver得配置信息,deviceName,port,bp,systemPort,platformVersi...

2020-03-31 11:23:41 658 1

原创 查看linux远程后端服务器日志

为了深入了解测试,自己写了个网站,flask+uwsgi+nginx,来说一下所谓的查看后端服务器日志我的项目搭载在nginx上,所以我要找到nginx的位置,使用命令find / -name 'nginx',找到nginx坐在位置,进入找到conf文件查看nginx.conf,找到error_log的路径就是后端服务器的错误日志...

2020-03-25 12:43:40 2938

空空如也

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

TA关注的人

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