自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 2022面试题整理

1.目前公司产品的整理架构2.分表和不分表测试有哪些区别?3.自动化框架:换一个环境,要准备新的测试数据?怎么改进可以效率更高?4.对称加密,非对称加密区别?用于哪些场景5.接口不可能随随便调用,怎么鉴权的?用的什么技术?有没有什么加密?6.git代码管理:是同一个项目?还是同一个service?7.读写分离:2主4从,从库是否数据一样?如果一样,为啥要多个从库?如何测试读写分离?8.......

2022-04-15 19:07:24 246

原创 IDEA-如何快速添加main、System等方法的快捷键

之前一直用的eclipse,原来写main就能补全main方法,写syso就能补全System.out.println();的便利突然发现没有了,这怎么行,今天就研究了一下如何在IEDA中实现这两个功能。操作步骤:1.File-Settings-Editor-Live Templaters2.初次使用,先点击【+】添加template group,我这里是JAVA3.选中JAVA,再点击【+】添加live template4.添加main,内容如图所示。其中$start$为快

2022-04-13 16:12:35 2892

原创 Idea-如何像eclipse一样一个窗口打开多个项目

1.打开IDEA → 选择 【file】→【new】→[Project]2.选择【Empty Project】 创建一个空项目 点击【Next】3.输入项目空间名  4.选择打开的位置 选择【This Window】 当前工作空间就会变成你创建的那个 我的是‘untitled’    到这个步骤就把我们需要的工作空间建立好啦!下面开始导入你需要的项目5.点击工具栏中的【file】6.选择【Modules】→ 点击【+】号 →选择【Import Module】→ .

2022-04-13 16:01:22 5899

原创 IDEA设置-testng生成默认的测试报告

eclipse会在test-output目录下自动生成测试报告,想知道IDEA是只可以在控制台那里点击导出手动生成报告么?第一步:点击工具条的run中的Edit Configurations第二步:选择需要生成报告的文件,选择Listeners,勾选“Use default reporters".再apply即可第三步:运行刚刚选择的文件,即可看到生成对应的文件夹test-output及测试报告...

2022-04-13 15:52:12 2065

原创 常见面试题整理-MTX

1.平时有没有写工具?有开发吗?有。写自动化脚本就算开发。工具:比如利用脚本插入数据库。2.接口自动化有做过吗?大概做到什么程度?比如:最高优先级的是什么覆盖情况?每个接口大概的覆盖情况?接口会覆盖什么样的case?在什么阶段去执行?带来什么收益?有。新项目会非常细致。会到字段层级。比如字段为空、格式、长短等。优先级比较高的是业务场景的用例测试。覆盖率基本上100%。比较核心的占比X%。利用自动化去做,提升回归测试效率,保障质量监控。同时发现更深层面的问题。3.举例一个稍微复杂的接口,它的业务逻辑

2022-04-03 16:31:41 539

原创 mac pro安装jmeter及环境变量配置

1.安装JDK及配置1.1 安装JDK如果你在终端(Terminal)输入java -version,可以得到JDK的版本,并且是Java 8以上,那就可以跳过这一步。下载地址:https://www.oracle.com/java/technologies/downloads/如下图,选择适用于Mac OS的JDK版本,点击下载。下载完之后直接安装即可。过程非常简单,按“继续”按钮一直下一步即可。安装完成后,打开终端(Terminal),输入以下命令可用于检查本机是否安装了JDK: ja

2022-01-20 18:12:00 1783

原创 App测试之Monkey压力测试

什么是monkey?Monkey意指猴子,顽皮淘气。所以Monkey测试,顾名思义也就像猴子一样在软件上乱敲按键,猴子什么都不懂,就爱捣乱。Monkey原理也是类似,通过向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、滑动Trackball、手势输入等操作),来对设备上的程序进行压力测试,检测程序多久的时间会发生异常,在功能测试完成后进行monkey测试。Monkey包括许多选项,它们大致分为四大类:(1)基本配置选项,如设置尝试的事件数量;(2)运行约束选项,如设置只对单独的一个包进行测试;

2021-11-28 18:04:06 1497

转载 monkey环境搭建及执行

一、环境准备1、JDK2、Android SDK二、JAVA环境的搭建1、JDK 下载地址:https://www.oracle.com/technetwork/java/javase/downloads/index.html2、JDK 配置环境变量,此处就不多叙述了,不会的可以查看小编以前写的关于JDK环境变量配置的教程。链接地址:https://www.jianshu.com/p/ee18a69e137d三、Android SDK环境1、下载Android SDK(最新版)下载地址:h

2021-11-28 18:02:21 2042

原创 接口测试用例设计

接口测试发现的典型问题传入参数处理不当,引起程序错误类型溢出,导致数据读取和写入不一致对象权限校验出错,可获取其他角色信息状态出错,导致逻辑处理出现问题逻辑校验不完善定时任务执行出错用例设计针对输入进行设计对于接口来说,输入就是入参,一般的参数类型:数值型① 边界内、边界值、边界外三个方面去考虑② 特殊值处理不当程序异常、类型边界溢出、错误信息返回不正确字符串① 主要考虑字符串长度和字符串的内容② 空、特殊字符、数字、表情符号数组链表多个重复值、空、最大范围值

2021-11-28 15:37:33 1316

原创 接口测试与APP测试的区别

后端接口测试一遍 ,前端也测试一遍,是不是重复测试了?如何做接口测试?参考:https://blog.csdn.net/weixin_44370919/article/details/103488233APP测试APP测试需要考虑的点:接口测试和APP测试的区别接口测试和APP测试,相同的部分:功能测试、边界分析测试、性能测试,其它部分由于各自特性或关注点不同需要进行特殊的测试。1、基本功能测试:由于是针对基本业务功能进行测试,所以这部分是两种测试重合度最高的一块。2、边界分析测试:在

2021-11-28 15:09:42 613

转载 count(*)和count(1)和count(列名)的区别

count是一种最简单的聚合函数,一般也是我们第一个开始学习的聚合函数,那么他们之间究竟由什么区别呢?有的人说count(1)和count(*)他们之间有区别,而有的人说他们之间没有区别那么他们之间到底有没有区别呢。从执行结果来说:count(1)和count(*)之间没有区别,因为count(*)count(1)都不会去过滤空值,但count(列名)就有区别了,因为count(列名)会去过滤空值。从执行效率来说:他们之间根据不同情...

2021-05-05 12:00:08 218

原创 Dubbo

一,什么是Dubbo 接口Dubbo 接口是阿里巴巴开源的致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案,dubbo框架告别了传统的web service的服务模式,进而改用provider和consumer模式进行服务。为什么是高性能的呢?可以在某个服务器集群中提供单一专注的服务,这样不与其他服务混杂,同时dubbo接口有SOA调度通过监控每台服务器而实现负载均衡。consumer端无需关注provider端如何实现,只需在注册中心订阅即可到相应服务器请求服务,这样就实现了高

2021-04-26 15:22:12 456

原创 测试类型(αβ测试 、AB测试)

1.αβ测试α测试:就是把用户请到公司内部进行测试使用。α测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的测试;目的:是评价软件产品的FLURPS(即功能、局域化、可使用性、可靠性、性能和支持)。注意!α测试不能由程序员或测试员完成。β测试:用户在不同场所进行测试。β测试是一种验收测试。β测试由软件的终用户们在一个或多个场所进行。总结:它们都是验收测试!α测试是指把用户请到开发方的场所来测试β测试是指在一个或多个用户的场所...

2021-04-25 15:51:32 2137

原创 Git Bash终端中文输出显示乱码解决方案

Git Bash终端中文输出显示乱码解决方案?简单几步,让你轻松解决。1.打开git bash窗口,在此不多说2.之前拉取后的界面(完全看不懂~)3.在多终端的空白处,点击鼠标右键,弹出的菜单中选择【options...】4.弹出的菜单中找到【Text】->【Local】,下拉菜单中选择zh_CN。在【Character set】下拉菜单中选择【utf-8】,既是选择简体中文,最后点击apply。5.执行命令git config --global core.quot..

2021-03-30 14:23:34 503

原创 如何用Fiddler模拟弱网测试

使用Fiddler对手机App应用进行抓包,可以对App接口进行测试,也可以了解App传输中流量使用及请求响应情况,从而测试数据传输过程中流量使用的是否合理。抓包设置在此不做赘述,自行百度~何为弱网?不同公司要求可能不一样。有的3g就算。有的40%丢包率,延时上行3000ms,下行1000ms那么如何进行弱网测试呢?因为fiddler本来就是个代理,它提供了客户端请求前和服务器响应前的回调接口,我们可以在这些接口里 面自定义一些逻辑。Fiddler的模拟限速正是在客户..

2021-01-07 10:57:01 4358

原创 Jmeter分布式测试

1.原因在做性能测试时,单台机器进行压测可能达不到预期结果。主要原因是单台机器压到一定程度会出现瓶颈。也有可能单机网卡跟不上造成结果偏差较大。例如4C8G的window server机器,使用UI方式,最高压测在1800并发(RT 20ms以内)左右。如果对于XML文件进行解析,更容易吃CPU,并发数会更低。当单台机器不能支持更大的并发时需要考虑分布式压力测试。2.原理Jmeter分布式测试时,选择其中一台作为调度机(master),其它机器做为执行机(slave) master.

2020-11-13 16:30:59 597

原创 接口测试返回500,可能是请求头错误

问题:接口的入参、地址、请求方式都设置对了,但是请求仍返回500,报系统错误是为啥?在日常进行接口测试过程中,我们都知道一个完整的接口HTTP请求一般包括四大部分:请求信息头、请求体、响应信息头、响应体、请求方式(post/get等)。在进行测试时我们比较关心的是请求入参,也就是请求体的信息,从而忽略了请求信息头的重要性。若是未正确定义信息头,会导致接口请求失败。注:本文仅分享由于请求信息头(Headers)未定义而引起的错误码500,不排除其他原因引起。本文主要带大家简单了解下..

2020-11-11 16:16:56 62007

原创 存储过程的创建和使用实例

MySQL 5.0 版本开始支持存储过程。存储过程(Stored Procedure)是一种在数据库中存储复杂程序,以便外部程序调用的一种数据库对象。存储过程是为了完成特定功能的SQL语句集,经编译创建并保存在数据库中,用户可通过指定存储过程的名字并给定参数(需要时)来调用执行。存储过程思想上很简单,就是数据库 SQL 语言层面的代码封装与重用。优点存储过程可封装,并隐藏复杂的商业逻辑。 存储过程可以回传值,并可以接受参数。 存储过程无法使用 SELECT 指令来运行,因...

2020-10-21 14:43:28 4336

原创 三种最常用的测试用例设计方法

从理论层面来讲,设计用例的方法有很多,如果你去翻阅测试图书或网络教程,会发现一堆让人眼花缭乱的测试方法,比如等价类划分法、边界值分析法、错误推测方法、因果图方法、判定表驱动分析法、正交实验设计方法、功能图分析方法、场景设计方法、形式化方法、扩展有限状态机方法等等,但是从软件企业实际的工程实践来讲,真正具有实用价值并且常用的只有前三种方法。 当然,对于那些与人的生命安全直接或间接相关的软件,比如飞行控制、轨道交通的列车控制、医疗检测相关的软件或者系统,由于需要达到几近变态的测试覆盖率...

2020-10-09 18:14:16 999

原创 Jmeter压测问题

1.单台Mac进行压测时候,压测客户端Jmeter启动超过2000个线程,Jmeter报OOM错误,如何解决?解答:单台Mac配置内存为8G,可用内存最大为3.5G左右,启动一个线程将近需要1M内存,2000个线程,需要大概2G左右的内存;然后启动Jmeter,本身需要将近400M的内存,接着在运行过程中,Jmeter又使用了Respoonse Time、TPS、Thread等等的计数器也会占用额外内存;最后,Jmeter运行不到2分钟,导致Jmeter闪退,然后Mac OS重启,原因就是系...

2020-09-29 11:07:07 1093

原创 Linux基本命令-grep 命令

grep 指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设 grep 指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为-,则 grep 指令会从标准输入设备读取数据。语法:grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>][-d<进行动作>][-e<范本样式>][-f<范本文件>][--h.

2020-09-24 15:41:33 204

原创 eclipse中 properties文件不显示中文,显示的unicode编码-解决方案

现象:当我们在需要创建了某些属性文件的时候,输入一些注释或者是变量名赋值是中文的时候,都是会变成了了类似于\u8906\u1872...等等原因: 因为eclipse中 XXXX.properties文件默认的编码方式是iso-8859-1。解决方案:1、window --> preferences2.在输入框中输入“Content Types ”3.选中“Content Types ”-->(右边框中) 选择Text --> Java Properties Fi...

2020-06-14 16:27:44 2427

原创 WEB UI自动化常见问题处理

1.在使用selenium打开chrome时同时打开了两个标签页,且页面停留在chrome的设置页面,页面打开链接后data页面也没有消失。如下图:处理方式:win+r 运行 regedit , ctrl+f 搜索TriggeredReset ,或者直接找下面路径HKEY_CURRENT_USER\Software\Google\Chrome\TriggeredReset删除即可2.自动化打开浏览器时,顶部显示“正受自动测试软件控制”//去除Chrome正受自...

2020-05-15 21:16:34 5169

原创 性能测试脚本调优及性能测试指标

不加集合点的并发都是相对并发

2020-05-05 22:31:58 259

原创 linux系统查看日志

实时打印日志:tailf1.进入日志所在文件夹2.tailflogfile动态跟踪日志文件logfile示例:3.tailf -n logfile动态跟踪日志文件logfile,最初的时候打印文件的最后10行内容。示例:通过错误关键字查询:vim1.进入日志所在文件夹2.用 vim 打开那个文件3.根据关键字(keywords)查询...

2020-04-17 14:12:55 303

原创 python使用pip安装第三方库(工具包)速度慢、超时、失败的解决方案

现象:在用pip安装第三方库时经常失败。原因:由于我们在cmd窗口进行pip安装时候,默认是去下载国外资源,由于国内网络问题常常会网速不稳定甚至没有网速,这时候就会导致安装包时出现错误。解决方案:一劳永逸的方法,选择国内镜像源,相当于你从国内的一些机构下载你所需的python第三方库解决方法:1.找到C:\Users\Administrator\AppData\Roaming...

2020-04-09 15:02:00 703

原创 jmeter处理接口加密和解密

整个处理过程1.测试数据加密2.请求服务器,获取返回值3.解密4.提取token值,作为下个请求的参数1.加解密jar包可向开发人员要。导入jmeter2.在需要进行参数加密的请求中添加BeanShell PreProcessorimport AES.AESUTil; //调用加解密的jar包String data1 ="{\"data\":\"111\"...

2020-04-09 14:40:55 5695 4

转载 selenium源码分析

1、webdriver模块1)在selenium中,无论是常用的Firefox Driver 还是Chrome Driver和Ie Drive,他们都继承至selenium\webdriver\remote下webdriver.py中的WebDriver 类。2)着重看下Remote下的WebDriver类中的方法:一、全局操作类start_session 使用指定的desir...

2020-04-07 18:03:15 1624

原创 TPS、QPS、吞吐量,如何计算

1.何为TPS?TPS (transaction per second)代表每秒执行的事务数量,可基于测试周期内完成的事务数量计算得出。例如:用户每分钟执行6个事务,TPS为6/ 60s= 0.10 TPS。同时我们会知道事务的响应时间(或节拍):60秒完成6个事务,代表每个事务的响应时间或节拍为10秒。...

2020-03-25 17:39:54 31938 1

原创 性能测试结果分析-Jmeter

Label:请求的名称 Sample:表示该请求在本次测试中一共发了多少个请求 Average:平均响应时间 median:中位数,也就是表示在所有请求响应时间中排在中间的那个响应的时间点,50%line 实际上中值指的是如果有9个数,那么我们从小到大排列这些数,排在第5个的数就是这一组数的中值。 那么如果有10个数呢?10个 数的话,第5个和第6个...

2020-03-25 16:27:31 706

原创 如何进行性能分析

一、性能分析的常用手段1、空间换时间,利用内存缓存从磁盘上取出的数据,CPU可以直接访问内存,从而比从磁盘读取数据更高的效率。2、时间换空间,当空间成为瓶颈的时候,切开数据分批次处理,用更少空间完成任务的处理。3、分而治之,把任务切分,分开执行。4、异步处理,业务链路上有任务时间消耗较长,可以拆分业务,减少阻塞影响,常见的异步处理有MQ(消息队列)。5、并行,用多个进程或者线程...

2020-03-25 14:24:41 5572

原创 UI自动化的坑

1.启动浏览器报错原因:浏览器版本与driver版本不匹配2.无匹配元素/元素不可见参考:UI自动化selenium元素定位不到常见问题3.设置等待时间在工作中,为了提高测试脚本的稳定性和实用性。我们常常会设置等待时间。常见的有:强制等待、隐式等待、显式等待4.上传文件最简单的处理方式是sendkeys但这种方式只适合元素标签为inpu...

2020-03-12 18:01:57 680

原创 一个简单的IOS自动化例子

运行ios自动化,首先需要一台mac这个第三方库,实现了多种数据类型的断言方法。可以先尝试判断元素是否存在

2020-03-12 10:05:38 474

原创 安全测试方法

安全测试策略:重点关注场景中的数据伪造、明文、xss注入、sql注入1.用户权限测试2.URL安全测试3.参数提交安全测试4.session测试5.cookie安全测试6.错误代码分析测试7.代码注入测试可修改页面代码请求测试,也可以在参数中植入源代码进行测试8.会话变量泄露测试9.记住密码和重置密码测试10.可猜测...

2020-03-11 14:44:08 2674

原创 Selenium-元素定位

UI自动化核心是元素识别Selenium官方网站在使用教程中说到,定位方式有8种,分别是class name、css selector、id、name、link text、partial link text、tag name、xpath并且告诉我们在选择使用定位方法的时候,建议遵循以下原则1.若id和name在html中是唯一的,则优先使用这2种。2.使用css或xpath,...

2020-02-25 15:34:37 257

原创 如何做好测试管理

1.从测试人员转为管理测试和管理有何区别?作为测试人员,大多数情况下只是参与者和执行者。作为管理,除了测试任务之外,还需要管理。需要计划、组织、指挥协调、沟通。需要制定测试用例编写规则、工具使用方法、测试计划模板、各种专项测试方案、交叉测试设计、测试总结等2.如何组建测试团队一个团队需要什么类型的成员?软件测试是一个繁琐重复的过程。测试人员的素质需要:耐得住性子、...

2020-02-25 14:44:52 1588

原创 如何进行接口测试

之前被问到这样一个问题。拿到一个接口,如何进行测试?首先,我们需要知道,什么是接口?接口主要用于外部系统与系统之间以及内部各个子系统之间的交互点,定义特定的交互点,然后通过这些交互点来,通过一些特殊的规则也就是协议,来进行数据之间的交互。接口的工作原理是什么?接口你可以简单的理解他就是URL,工作原理就会说URL通过get或者post请求,向服务器发送一些东西,然后得到一些相...

2019-12-11 11:00:43 562

原创 Linux查找文件内容的常用命令方法

find命令find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]find默认的寻找路径为当前目录,并且默认的表达式为-print1、列出某个路径下所有文件,包括子目录。find/data-name “*”2、查找在某个路径下所...

2019-12-09 17:24:49 578

转载 Jmeter之Bean shell使用

一、操作变量:通过使用Bean shell内置对象vars可以对变量进行存取操作    a) vars.get("name"):从jmeter中获得变量值    b) vars.put("key","value"):数据存到jmeter变量中二、操作属性:通过使用Bean shell内置对象props可以对属性进行存取操作    a) props.get("START.HMS")...

2019-12-05 15:10:37 1159

转载 Jmeter之Bean shell PreProcessor

一、什么是Bean ShellBeanShell是一种完全符合Java语法规范的脚本语言,并且又拥有自己的一些语法和方法; BeanShell是一种松散类型的脚本语言(这点和JS类似); BeanShell是用Java写成的,一个小型的、免费的、可以下载的、嵌入式的Java源代码解释器,具有对象脚本语言特性,非常精简的解释器jar文件大小为175k。 BeanShell执行标准Java语...

2019-12-05 11:29:38 869

空空如也

空空如也

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

TA关注的人

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