- 博客(146)
- 资源 (11)
- 问答 (9)
- 收藏
- 关注

原创 腾讯混元大模型代码能力实测
以上的两个例子都是举的java的例子 ,实际上python等其他语言也都类似。我们在使用腾讯混元模型生成代码时,通常得到的都是一些基础的代码 ,当然,这些代码都是正确的。在实际工作过程中 ,我们可以拿生成的代码先进行简单的连接调试,随后根据需求自行改进和额外封装。因此,对于第一点模块代码的生成功能,我的使用感受是第一点:可以快速生成最基本的调试代码,其次可以过滤掉传统搜索引擎很多无效的信息。个人认为,在项目或者框架的启动阶段格外实用。
2023-11-20 10:48:51
626
原创 Jmeter二次开发实操问题汇总(JDK问题,jar包问题)
这就导致一个问题,使用社区版的IDEA创建Maven项目,然后打jar包,一切的做法都是对的,但偏偏打出来的jar包Jmeter无法读取。这就使得在使用jmeter调用接口的时候,需要先把手机号,密码等值在其他地方加密一下,然后再填到jmeter里去,非常麻烦。Mobile或者前端调用部分接口,比如登录,验证码发送等等,要求手机号,密码,验证码等信息需要加密。首先讲一下环境,公司提供的电脑权限是限制的很死的,我没有权限修改环境变量。在调用接口时的值是经过加密的值,后端收到相应的信息后再解密。
2024-01-03 15:05:32
727
原创 自动化框架错误排查:本地全通过,pipline上大部分报错
最后拿报错处给出的键和redis里实际的比较,发现是开发重构代码把键给改了,觉得测功能不需要知道这个,就没有通知我们。我在堡垒机上使用命令行来跑case,发现与pipline上一致,并定位到了错误处。最近经过一次切环境和验证码部分的代码重构,果不其然,我们的自动化框架就出错了。这一步要求修改redis里的值,执行成功,说明连接redis没有问题。这么多case报错,而且报错log都一模一样,推断是底层出错。pipline上无法拿到返回的验证码,拿到的是null。拿着这个null去做后续的传参,自然会报错。
2023-12-04 17:08:37
490
原创 Mysql 子查询,最值查询
随后查找最终需要的值,并且部门编号以及薪水应该包含在这个子查询中。首先是一个子查询,找出一个部门里最高的那个工资。
2023-09-20 15:16:03
420
1
原创 Mysql join用法详解
如果A表中有一条数据,在B表中没有有关这条数据的任何信息,那么这条A表中的数据依旧会被打印,只不过B表中相应的字段会被打印为NULL,如下图8,9,10。Allen wang 这条数据依旧被打印,不过B表中的city和state两个值为Null。这个查询语句最根本的是要找出A表中所有的行,A与B交叉的那部分可以视为ON后所跟的条件。所以如图所示,A表整个被涂蓝。
2023-09-11 11:07:20
279
原创 接口请求一次成功,一次失败,50%成功率
最后经过排查,发现是有新入职的开发将dev环境的UC又重新注册到consul上了,所以现在consul上有两个一摸一样的UC服务,一个是正常连接DB/redis的,一个是新注册未连接DB/redis的。网关上配置了负载均衡(LB),所以每两次请求,一次被分配到了正常的UC服务,一次被分配到了错误的UC服务,所以现象是一次成功,一次失败,交替出现。User Center 是已经通过测试并部署的微服务,有用户注册,登录,验证码,用户信息管理等功能,但还未开放给用户使用。
2023-09-08 10:40:48
810
原创 踩坑:自动化中login和logout尽量不要在1s内发生
这样,旧token的办法时间明显小于被更新后的时间,这个旧token被判定失效。login时token给定了一个颁发时间,logout在同一秒内发生,去redis里更新了一下时间,与旧token的颁发时间在同一秒内,所以判定旧token 仍旧有效。原本的技术架构是:有效的token会放在redis里,无效的,被logout注销或者被refresh刷新的这些token会被放在黑名单里,同样也在redis里。按理来说,使用这个token调用logout之后,这个token随后应该是失效的,但实际上并没有。
2023-07-18 09:51:32
217
原创 Postman:mock server简单使用,自定义获取response body
这边的body填不填都可以,也可以设置必须要指定的body才会返回相应的response body。创建成功后Collections那里会自动多一个跟mock server 对应的接口。创建一个虚假的服务器+接口,只要访问就可以返回设定好的response.点击send,返回之前设置好的response body。首先创建一个mock server。可用于接口调试和接口自动化测试。接下来是调用接口,首先复制url。指定response body。
2023-06-28 10:54:41
785
原创 python requests踩坑: post请求中data和json的区别
经过排查,发现是post中不应该用data = xxx 而已该使用json =, 改完后请求成功,可以正常访问犯蠢了,太久没用了。
2023-04-26 17:24:36
743
1
原创 java_集合
ArrayList的底层数据结构是数组,但不同于数组,arraylist的长度是可变的。同时由于实现的底层数据结构是数组,arraylist因此也具有数组的一些缺点:在进行增删操作时需要大批量的移动元素,非常不方便。能够把它保存的记录根据键(key)排序,默认是按升序排序,也可以指定排序的比较器,当用Iterator 遍历TreeMap时,得到的记录是排过序的。保存了记录的插入顺序,在用Iterator遍历LinkedHashMap时,先得到的记录肯定是先插入的.在遍历的时候会比HashMap慢。
2023-04-11 14:29:09
515
原创 渣渣的leetcode之旅(java)_1,2(链表),21(链表),2404(HashMap),83(链表+hashMap)
【代码】渣渣的leetcode之旅(java)_1,2(链表)
2023-03-24 17:40:51
111
原创 java_static,单例,final
static修饰的方法叫类方法,可以直接通过类名来访问:Student.printScore(),也可以通过实例对象来访问,s.printScore()。类变量共同属于所有实例,被所有实例共享,可以通过类名来访问,如Student.name,也可以通过实例来访问,如s.name。2.实例方法中可以直接访问类变量/方法,也可以直接访问实例变量/其他实例方法。1.类方法中可以直接访问类变量/其他类方法,不可以直接访问实例对象/方法。而未被static修饰的方法实例方法,只能被实例对象来访问。
2023-03-24 17:40:19
315
原创 Centos7(阿里云)_安装Mysql8.0
一开始可能确实会自带mariadb,所以可以在网上随便找个教程开始尝试安装MySQL,当然大概率出错,然后此时你的rpm下面已经有了一个版本的mysql安装包。所以的步骤都是可以的,除了最后一步,不知道什么原因,我在安装5.7版本的MySQL之后没有生成mysqd.log文件。tmp这是个临时目录,下面的文件随时可能被删,看看这个目录下面,确实没有mysql.sock这个文件。这样从远端可以用navicat连接了,注意因为是在服务器上,所以要用SSH连接,具体配置如下。百度了一下说是之前有东西没卸载干净。
2023-03-05 13:59:35
680
原创 Java_XML,注解
Override 代表方法重写的注解,子类对父类中的某个方法进行的重写,首先方法名要与父类中的方法名保持一致,其次在子类中的重写函数的上方添加@Override代表提示这个方法是一个重写的方法。然后用下面这段代码读取xml,接近于源码,框架中应该可以直接使用。一些@author,@param的注解暂时掠过。解析XML可以用一个叫dom的工具。把jar包放到项目lib目录下。
2023-02-28 11:29:39
297
原创 Java_程序,进程,线程以及网络编程
首先,主线程里的这个for循环会先走完,在引入多线程后,子线程会和后续的主线程争抢资源,双方交替执行,直到都执行完毕,如下图。重写了run方法之后,内部执行的就是我们所写的子线程的内容了。先启动服务器代码,让服务器持续等待获取消息中。然后启动客户端代码,客户端发送消息。先尝试继承Thread类。服务器端成功接收到消息。
2023-02-27 20:37:52
92
原创 Java_类和对象的关系
其实很简单,就是子类中有个与父类中一摸一样的函数(函数名,形参都相同),就是函数内部的操作有些不同。子类会优先调用子类自己中被重写的方法,不会调用父类中的那个函数了。构造方法也叫构造器,是一个创建对象时被自动调用的特殊方法,用于对象的初始化赋值。java通过new关键字来调用构造器,从而返回该类的实例。一个类通常有三个部分,属性,方法,构造器。父类的值、方法,子类可以直接调用。
2023-02-10 19:53:05
148
原创 Java的语言特性/基础语法
(通常将类的属性称为类的全局变量(成员变量),将方法中的属性称为局部变量。分布性java的分布性包括操作分布和数据分布,其中操作分布是指的可以在不同的主机上布置相关操作,而数据分布是将数据分别存放在多个不同的主机上,这些主机是网络中不同的成员,java可以凭借url来访问网络对象,访问方式与访问本地相同。可移植性java具有与体系结构无关的特性,在网络中不同的计算机内都可移植解释性/安全性/健壮性/高性能多线程多线程机制使程序能够在同一时间并行执行多项任务。
2023-02-08 14:33:36
542
原创 面试_MySql下SELECT相关问题
写在最前面,在编写SQL语句时,诸如SELECT,FROM,WHERE等SQL的关键字按照规范来说应该是要全部大写的,但我此篇博客没有做,很多内容也是我复制整合过来的。
2023-01-30 10:33:28
1280
1
原创 面试_Http常见问题
首先,发送方发出Find的报文,接收方需要连续发出两次报文,这是因为在发送第一个ack报文的时候,接收方手头可能有正在传输的其他报文,所以会在手头的报文传输完毕之后回复一个fin报文表示可以结束通信。6.两者的TCP传送方式不同,GET会把header和body一起发出去,然后得到200OK,而POST会先发header,得到100 CONTINUE然后再接着发body的内容。为什么不是四次握手,因为三次是保证连接建立的最少次数,通信的质量不是靠握手的次数来保证的,所以更多的握手次数没有必要。
2023-01-29 10:42:20
354
1
原创 面试_Selenium常见问题
6.HTTP Server又将结果返回给Selenium的脚本,如果是错误的http代码我们就会在控制台看到对应的报错信息。2.webDriverWait(driver,10) 在给定的时间内如果拿到元素就继续,拿不到会报错。1.对于每一条Selenium脚本,一个http请求会被创建并且发送给浏览器的驱动。2.浏览器驱动中包含了一个HTTP Server,用来接收这些http请求。3.HTTP Server接收到请求后根据请求来具体操控对应的浏览器。5.浏览器将步骤执行结果返回给HTTP Server。
2023-01-29 10:05:28
3180
原创 面试_python常见问题
2、列表可以使用append()、extend()、insert()、remove()和pop()等方法实现添加和修改列表元素,而元组则没有这几个方法,因为不能向元组中添加和修改元素。一般的类是不可迭代的,如果要使一个类可迭代,需要在其内部定义好__iter__以及__next__方法,在循环类的过程中,先调用iter方法,然后调用next方法查询下一个数。1、列表是动态的,属于可变序列,它的元素可以随时增加、修改或者删除,而元组是静态的,属于不可变序列,无法增加、删除、修改元素,除非整体替换。
2023-01-29 09:50:37
439
1
原创 Linux_认识与分析日志文件
一种是linux发行版提供的日志管理服务来统一管理,这些日志记录的都是linux系统下的一些日志信息,如lastlog记录最后一次登录,maillog记录邮件来往信息,这些日志文件存放在/var/log下。Linux在后台工作的进程总是会显示一些重要的信息,然后这些信息会被记录到日志文件中。所以日志文件对于开发者和系统管理员来说都是非常重要的。另一种则是软件开发商自行定义写入的日志文件,如apache,这些软件上定义的日志文件相对来说是开发测试需要重点关注的日志文件。日志的产生大体可以分为两种。
2023-01-28 20:09:34
763
原创 Linux查看本机状况命令
netstat用来显示网络状态,传统上,它用于问题确定而不是性能测量。但是,netstat 命令可用于确定网络上的流量,以确定性能问题是否是由于网络拥塞引起的。查看磁盘空间的使用情况,一般关注Mounted On为根目录/的那行数据即可,Size为总容量,Use%为。(下图中红框的值是空闲率,用100-空闲率就是CPU使用率,单位为%)查看自己电脑的内存状态,available是剩余可用的(不是free)在top状态下按1,可以查看自己的cpu是几核的。查看自己的网络地址,网卡等情况。
2023-01-26 10:28:16
1792
原创 Linux_常见命令
硬链接不能跨文件系统,不能链接目录。这三个7可以与上一个条目的命令ls -l结合起来,ls -l里有三组权限,而这边的三个7就分别对应这三个权限,第一个7代表owner(4®+2(w)+1(x)),第二个7代表同组其他成员的权限,第三7代表others。符号链接也就是快捷方式,是建立一个独立的文件,这个文件仅作指向作用,它指向另一个文件,当源文件被删除后,符号链接的文件就打不开了。除了第一位,那么其他还有9位,分为3组,每组都是交代3个权限,r:read,w:write,x:execute(执行权限)
2023-01-25 20:34:11
879
原创 MySql必知必会_引擎,PROCEDURE,事务处理
书接上文,之前说了Mysql的SELECT部分,本片文章会重点介绍关于MySql的其他一些知识,也会是MySql必知必会的最后一篇。首先,是Mysql中的增删改操作,对于测试岗来说,这部分知识相对来说不是那么重要,我一次性把一些基础部分贴一下。
2023-01-18 20:07:53
558
原创 MySQL必知必会_SELECT部分
最近在读MySQL必知必会,关于这本书打算写点读后感,大概是两篇博客的体量。其实对于测试岗来说,不管是面试还是实际工作中,最重要的自然当属SELECT。下面我把书里关于SELECT的知识点简单记一下吧。首先在MySQL中其实是不区分大小写的,但为了规范,我们在写SQL语句的时候还是注意要将关键字大写。比如与mysql有关的操作如SELECT,FORM之类的关键词。
2023-01-13 14:03:06
672
原创 Erlang
1.erl文件头部-module(person).-export([init/1,test/2]). %未在此处被申明的函数不可在模块外部被调用-import(lists,[map/2,sum/1]) %lists是erlang的标准库,在此导入其中的map和sum两个函数init(name) ->test(a,b) ->-module(person).代表此文件包含用于person的模块代码,与文件名person.erl一致,模块名必须以小写字母开头。-export是一条
2021-10-19 17:38:28
240
原创 jmeter(十一)_jmeter+influxdb+grafana
上篇文章使用了命令行来进行压测,并提到了使用命令行压测的痛点:无法实时监控报错以及各接口的tps情况。为此有了jmeter+influxdb+grafana的方案。(jmeter—>influxdb存储—>grafana展示)grafana 是一款采用 go 语言编写的开源跨平台工具,主要用于大规模指标数据的可视化展现,是网络架构和应用分析中最流行的时序数据展示工具,目前已经支持绝大部分常用的时序数据库。influxdb是一个时序数据库。因为时序的特性并且性能极高,可以处理海量的数据查询,
2021-08-24 18:02:04
396
原创 jmeter(十)_命令行压测
不推荐使用图形化界面压测的一个原因是本地资源浪费大,另一个原因则是官方不推荐。使用命令哈进行jmeter压测:1.命令行压测先通过命令行进入需要压测的jmx文件的上级目录接下来输入命令jmeter -n -t test_001.jmx -1 test.jtl,其中:-n 代表要使用命令行来进行压测-t 后面跟上jmx文件,代表指定本次压测文件-l 指定输出报告运行命令行,出现如下可以看到用命令行来进行压测所得出的tps肯定是比用图形化界面压测得到的高的。运行完成后会在当前
2021-08-21 21:36:07
2008
原创 jmeter(九)_混合场景性能测试
在实际的上线项目,不可能只有一个接口,应该是很多个接口一起运行,也就是多个业务场景同时在运行。比如说共100个人在使用系统,10个人在浏览商品,20个人在下单,3个人在登录。。。。。引申到性能测试里,我们要在jmeter里给不同接口按照实际场景的比例来分配压力。在线程里添加两个个Throughput Controller我现在线程组里有两个接口,我希望这两个接口的压力是1:4那么两个Throughput Controller里的值分别为80和20,如下图:接着把对应的接口放到对应的Thro
2021-08-21 20:42:20
4716
原创 jmeter(八)_单接口负载的测试
测试单接口的峰值和负载,可以通过改变线程数来实现。比如以10,20,40的线程数分别来压测这个接口来达到性能测试的目的。(同一个线程数运行的时间应该达到10~15分钟。)
2021-08-20 22:12:03
936
原创 jmeter(六)_正则表达式提取token,写入文件
一.正则表达式提取token,用户名等数据并存入一个指定文件在login接口下面添加一个正则表达式提取器(在正则表达式中,.代表匹配任何字符串,+代表一次或多次,?代表直到找到第一个匹配项为止)用Beanshell打印一下,提取token成功同样的,username也是一样的提取...
2021-08-19 09:34:41
2650
1
原创 Jmeter(五)_CSV Data参数化,Beanshell
一.CSV Data Set Config准备好一个txt文件,写入如下内容,第一行可以不写,写了的话也会作为一组数据被运行:然后把后缀名改为CSV,这样一个参数化文件就准备好了然后打开jmeter,在需要使用这个参数化文件的接口下面添加CSV Data Set Config注意在这边指定的两个参数user和pass,在接口下方以${}包装这两个参数最后设定一个并发线程数为10运行这个线程组,可以读取CSV里面的参数在接口里面传递。如果线程数大于CSV文件里面的列数,会在运行到底部再从
2021-08-17 19:43:42
1332
原创 docker搭建本地私有库
1.以registry为例,搭建一个私有仓库输入命令docker run -d -p 5000:5000 --name registry registry:2安装完本地仓库之后,在本地浏览器访问自己的仓库2.把自己的镜像打包到私有仓库去查找自己本地存在的镜像,我之前创建了一个springboot_docker0808:v1的镜像先把镜像打包:docker tag springboot_docker0808:v1 172.17.0.2:5000/springboot_docker0808:1
2021-08-14 19:19:31
159
原创 docker push报错 server gave HTTP response to HTTPS client dial tcp getsockopt:connection refused
之前创建好了本地镜像并打包,但是在push的时候报错这是个很常见的错误,网上搜出来的解决方案都是输入命令 vim /etc/docker/daemon.json然后添加如下{"insecure-registries":["xxx.xxx.xxx.xxx:5000"]}我这边添加了两个,实际上一个也行,5000是我创建是指定的端口保存这个文件之后退出,然后输入命令systemctl daemon-reloadsystemctl restart docker但是再push的时候报
2021-08-14 16:36:52
1448
1
原创 docker实操_dockerFile创建docker镜像,启动docker容器
1.简单尝试,首先创建第一个基于ubuntu镜像的docker容器输入命令docker run -i -t ubuntu /bin/bash(/bin/bash:交互式 Shell,-t: 表示容器启动后会进入其命令行,-i: 表示以“交互模式”运行容器)这个命令的意思是在指定的镜像ubuntu下创建一个新的容器,然后进入该容器的交互命令行不知道因为什么原因失败了输入命令再试一次,创建成功这样一个docker容器就创建好了然后因为创建的时候命令行后面的 /bin/bash,创建好容器后自动
2021-08-12 19:38:40
1837
Charles 无法抓包安卓高版本的问题
2020-08-14
Django 监听端口的方式不同,导致页面展示效果不同
2020-04-21
html js根据类名删除所有同名class输入框的内容
2020-04-15
Django ajax可以发送请求,但无法调用后台方法
2020-04-13
Django ajax无法调用后台方法
2020-04-08
Django for循环创建div div内按钮点击事件只有第一个div可以触发
2020-04-08
Django for循环传递参数问题
2020-04-07
Django 跳转页面 参数传递问题
2020-03-18
TA创建的收藏夹 TA关注的收藏夹
TA关注的人