自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

南夏一木子的博客

学习的苦是一时的,学不到的苦是一辈子的!

  • 博客(145)
  • 收藏
  • 关注

原创 性能测试入门&基本概念

驱动:多个人,同时使用中间过程:分析指标数据的背后意义产出:可能存在的问题、性能指标数据性能测试中,预期结果和实际结果,是否一致,不是关注的。

2024-04-08 21:15:36 311

原创 浏览器如何定住页面

页面中有元素或者页面体节内容后很快消失,使用这个工具。第二步:点击Source,操作功能。第三步:点击关闭按钮,即可定住页面。第一步:打开开发者工具。

2024-03-12 20:55:05 354

原创 常用linux命令集合

1、查看端口占用方式一命令模板:$: lsof -i:端口号举例:$: lsof -i:80方式二命令模板:$: netstat -anp tcp | grep 端口号举例:$: netstat -anp tcp | grep 9999参考:mac系统端口占用解决_mac 端口占用_张俊杰1994的博客-CSDN博客

2023-12-05 11:46:03 139

原创 接口测试 — 到底在做什么?

接口测试在行业存在很久,只是部分同学对于接口这个概念从根本上不清楚,不理解,不知道是什么,该怎么做。所以为什么要做接口呢?1、http网络协议的介绍。3、接口关联的测试实现。

2023-11-25 23:39:58 220

原创 Python —— 深拷贝&浅拷贝

深拷贝(Deep Copy):深拷贝创建了一个新的对象,该对象与原始对象的内容相同,包括所有的嵌套对象。深拷贝产生了一个完全独立的复制,修改原始对象中的可变对象不会影响新对象。示例代码:print(original_list) # 输出:[5, 2, [6, 4]]print(deep_copy_list) # 输出:[1, 2, [3, 4]]浅拷贝创建了一个新的对象,该对象与原始对象的内容相同,但是对于可变对象(如列表和字典)来说,新对象只是原始对象的一个引用。

2023-11-08 18:06:14 294

原创 Python —— UI自动化用例前置处理&日志封装

前置顾名思义是在执行测试用例之前做的一些事情,在自动化测试时会碰到用例执行前需要做一些前置操作,以及用例执行后需要做一些后置操作,比如登录、退出等,通过pytest fixture可以很方便实现。将这个前置放在项目目录下的conftest.py文件中,可以实现数据共享,不需要import 导入 conftest.py,pytest用例就会自动查找。对 于一些公共的fixture我们可以将其存放到conftest.py进行管理。

2023-10-27 21:18:26 625

原创 Python —— UI自动化之Page Object模式

Page Object Model(页面对象模型), 或者也可称之为POM。在UI自动化测试广泛使用的一种分层设计 模式。核心是通过页面层封装所有的页面元素及操作,测试用例层通过调用页面层操作组装业务逻辑。

2023-10-22 23:03:12 633

原创 Python —— UI自动化之使用JavaScript进行元素点亮、修改、点击元素

修改元素主要体现在设置和移除元素中,如下:设置属性:setAttribute移除属性:removeAttribute使用JavaScript设置元素举例说明:使用JavaScript移除元素举例说明:setattribute方法详解_笔记大全_设计学院使用场景:使用selenium的click()方法去点击一些按钮时,会出现:Other element would receive the click 提示,为了解决这个问题,可以使用JavaScript的点击解决。

2023-10-22 14:10:10 476

原创 Python —— 验证码的处理&执行JavaScript语句

很多的网站都在登录页面加入了识别文字,识别图片,拖动拼图的验证码方式来防止爬虫、恶意注册 等,如果是做自动化,需要绕过验证码才能进入下一步操作,那么有4种方案可以解决我们遇到的问题。

2023-10-20 19:49:20 278

原创 Python —— 特殊场景处理(下拉框、鼠标、键盘操作&文件上传)

Keys()类提供了键盘上所有按键的方法,常用的键盘按键操作如下:send_keys(Keys.BACK_SPACE) #删除键(BackSpace)send_keys(Keys.SPACE) #空格键(Space)send_keys(Keys.TAB) #制表键(Tab)send_keys(Keys.ESCAPE) #回退键(Esc)send_keys(Keys.ENTER) #回车键(Enter)send_keys(Keys.CONTROL,‘a’) #全选(Ctrl+A)

2023-10-13 23:56:48 1448 1

原创 Python —— UI自动化之 三大等待与三大切换

全局应用,它适用于WebDriver会话期间中所有查找的Web元素(通过findElement方法)只能等待元素存在,不能适用条件更复杂的情况,如:元素可点击、元素可见1、如果超过隐式等待的设置时间还是找不到元素,就会抛出了NoSuchElementException-找不到元素异常2、放置的位置,一般我们会将其放置到driver的初始化之后3、全局生效,只需要设置一次,之后通过find_element去找元素都会有隐式等待的效果4、等待条件的区别,只能等待元素存在。

2023-10-13 11:58:02 639

原创 Python —— 接口测试之使用requests发起请求实战

json参数:requests库,针对请求体格式为application/json的,独自写了一个json参数的处理机制,数据类型是字典。因此,如果使用接送传参,只需要将参数写为字典的格式即可发起请求。data参数:data为字典类型,默认的请求体格式为的application/x-www-form-urlencoded。1、params参数:get请求,请求参数一般是拼接在url后面的,因此请求参数使用params参数(字典类型)3、verify参数: 遇到发起https请求的时候,要证书。

2023-10-11 16:12:05 1012 1

原创 Python —— 接口自动化(1)

1、主流的工具类型 - jmeter,postman,apifox,fastapi,apipost....2、公开的自动化平台 - metersphere,yapi....3、公司内部自研平台 -不论是平台还是工具,设计理念都差不多,因此相比之下,使用代码自己去完成框架搭建,是一种当下很重要的能力。

2023-10-11 10:54:35 120

原创 Python —— UI自动化之八大元素定位

xpath是一种path(路径),一个描述页面元素位置信息的路径,相当于元素的坐标。xpath基于XML文档树形结构,是XML路径语言,用来查询xml文档中的节点。xpath既可以用于XML,也可以用于HTML。以下介绍xpath的定位方式。

2023-10-09 00:08:55 872

原创 Python —— pytest框架

1、搭建自动化测试框架的思路和流程,任意测试手段流程都是一致的:手工测试、自动化测试、工具测试不需要安装,不能自动发现测试用例,手动收集用例pytest:第三方库,需要安装导入使用:智能自动收集所有用例,使用更广泛- 安装: pip install pytest- 导包:import pytest3. unittest和pytest都是单元测试框架,都可以用来编写测试用例,运行用例,生成报告,实现测试前置和后置等。

2023-09-22 14:10:21 2270 2

原创 Python —— excel文件操作(超详细)

很多公司还是用excel去管理测试用例的,所以为了减少重复繁琐的导出导出工作,协会如何用代码操作excel表格。

2023-09-21 16:32:36 7319 2

原创 Python —— 类和对象

1、init方法在类定义的时候,就会给对象定义实例属性2、初始化对象过程:函数的名字是固定的不能变2、实例化对象的过程,会调用init方法4、实例属性都会在init函数里去定义,基本上不会在外面去定义5、init方法没有返回值,不能写 return,写了默认是None# 定义类class Car:# 定义类的属性wheel = "四个轮子"# 定义init方法,并且在init中定义了2个对象的属性,cl和lgprint(f"正在生成一辆车···")

2023-09-19 18:31:56 431

原创 Python —— 捕获异常(try-except、raise)&日志模块(logguru)

一般是开发者控制不了的地方,例如:用户输入数据、用户传参、函数返回值调用,需要加上异常捕获。1、查看控制台的报错信息,报错信息会显示行号、点击文件可以跳到问题行。真实项目情况下,需要对不同的报错信息进行不同的处理:记录日志,警告,发送邮件等。try中的代码不报错,不会执行except中的语句。- 最后加上Exception 兜底。如果报错,会执行except中的代码。- 尽量去区分异常进行捕获,优先使用。机制不会因为报错影响后面的代码运行。1、先运行 try中的代码,

2023-09-14 22:24:57 1763

原创 Python—— 模块和包、以及导入模块和包

是一个Python文件,以py结尾的文件,一般会包含python语句、函数、队形定义等,可以认为模块是Python文件的高级叫法~

2023-09-14 21:03:58 117

原创 Python - 数据类型

1、用来存储做个数据2、列表的元素可以是任意类型3、列表当中可以嵌套,可以一直嵌套列表、字典等,但是不建议4、列表中的数据,几乎包含所有数据类型5、列表的切片还是列表。

2023-09-14 11:43:03 95 1

原创 使用Selenium录制第一个自动化脚本

Selenium入门篇1、认识Selenium(WEB自动化工具)2、在浏览器中添加selenium工具步骤2.1、以火狐浏览器为例,详细叙述一下添加过程。首先,在火狐浏览器中找到添加组件的位置,如下:2.2、搜索Selenium关键字,找到这个组件,并添加这个组件2.3、添加成功后的效果图3、使用Slenium录制第一个自动化用例3.1、在浏览器中打开selenium工具,可以看到如下界面,:3.2、输入目标URL,进行录制操作3.3、回放录制的内容3.4、在完成以上操作之后,给这个case加一个断言,步

2021-07-26 00:20:11 2458 5

原创 剑指offer 之 二维数组中的查找

题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。[[1,2,8,9], [2,4,9,12], [4,7,10,13], [6,8,11,15] ]给定 target= 7,返回true。给定target=3,返回false。 示例 在数组中寻找是否有数字7 ,数组为:[[1,2,8,9],[2,4...

2021-06-22 23:12:09 211 3

原创 力扣 162题-寻找峰值

题目描述 峰值元素是指其值大于左右相邻值的元素。给你一个输入数组nums,找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回 任何一个峰值 所在位置即可。 示例 示例 1:输入:nums = [1,2,3,1]输出:2解释:3 是峰值元素,你的函数应该返回其索引 2。示例2:输入:nums = [1,2,1,3,5,6,4]输出:1 或 5解释:你的函数可以返回索引 1,其峰值元素为 2; 或者返回索引 5, 其峰值元素为 6。 ...

2021-06-22 19:45:33 243 1

原创 在一串字符中查看是否有重复字母,有则返回false,无则返回true

题目:在一串字符中查看是否有重复字母,有则返回false,无则返回true 例如:输入 "abcdefg" 输出:true 输入:"abcccc" 输出:false 解题思路 因为前几条做过一道使用map与字符数组去做去重的题目,因此,我在这里想到快速解体的方法就是是用这两个工具; 先将字符串转换为字符数组,关键代码:char[ ] charArray = str.toCharArray(); 要检测是否有重复的字母...

2021-06-21 21:15:00 582

转载 JAVA中的float和double的区别

1.两个在定义时的区别1)float型 内存分配4个字节,占32位,范围从10^-38到10^38 和 -10^38到-10^-38例float x=123.456f,y=2e20f; 注意float型定义的数据末尾必须有"f"或"F",为了和double区别(2)double型 内存分配8个字节,范围从10^-308到10^308 和 -10^-308到-10^-308例double x=1234567.98,y=8980.09...

2021-04-20 14:04:13 4739

原创 力扣第50题 Pow(x, n)

1、题目描述实现pow(x, n),即计算 x 的 n 次幂函数(即,xn)。示例 1:输入:x = 2.00000, n = 10输出:1024.00000示例 2:输入:x = 2.10000, n = 3输出:9.26100示例 3:输入:x = 2.00000, n = -2输出:0.25000解释:2-2 = 1/22 = 1/4 = 0.25提示:-100.0 <x< 100.0-231<= n <=231-1-10...

2021-04-20 11:12:53 236

转载 elastic-job 和 xxl-job 的对比

一、综合对比许雪里软件作者05/23 18:47#xxl-job#即将发布的新版本,将会自研触发组件,移除quartz依赖,并精简掉11张表,大大降低线程和内存开销。在第三方依赖上不断做减法,在功能上不断做加法。 感谢quartz在历史版本中对xxl-job提供的支持,但是它逐渐跟不上xxl-job的发展,xxl-job即将踏上新的道路 ……XXL-JOB v2.1.0,分布式任务调度平台 1 xuxueli · 22 天前 · 1260 次点击v2.0.2 ...

2021-04-14 20:05:32 2603

原创 linux常用命令总结

1、文件操作cat:查看一个文件2、过滤一个关键字 | 过滤一个或者多个不想要的关键字

2021-04-13 20:15:28 119 3

原创 了解互联网

1、互联网三高高性能 高可用 高扩展2、业务复杂度优化,举例:2.1、异步(MQ,Tomcat非阻塞协议)2.2、集群2.3、负载均衡2.4、分库分表2.5、JVM优化(G1)2.6、热点数据多级缓存2.7、动静分离2.8、CDN2.9、锁优化2.10、减少IO操作2.11、熔断、降级、限流3、CFS(完全公平调度算法)算法4、锁概念:将多个人的并发,变成了序列synchronize{// 执行这段代码的过程这个线程一直持有这把锁,同一时

2021-04-13 10:08:29 93

原创 使用Charles做弱网测试入门篇

1、弱网测试简介1.1、背景当前APP网络环境比较复杂,网络制式有2G、3G、4G、5G网络,还有越来越多的公共Wi-Fi。不同的网络环境和网络制式的差异,都会对用户使用app造成一定影响。另外,当前app使用场景多变,如进地铁、上公交、进电梯等,使得弱网测试显得尤为重要。如果app没有对各种网络异常进行兼容处理,那么用户可能在日常生活中遇到APP闪退、ANR(Android Not Response)、数据丢失等问题。因此,app网络测试,特别是弱网测试尤为重要。本文梳理了网络测试要点(主要针对A

2021-04-07 17:30:29 6091 3

原创 使用Charles做断点测试入门篇

1、断点测试的含义1.1、断点(英语:Breakpoint)是程序中为了调试而故意停止或者暂停的地方。调试设置断点可以让程序运行到该行程序时停住,借此观察程序到断点位置时,其变量、寄存器、I/O等相关的变量内容,有助于深入了解程序运作的机制,发现、排除程序错误的根源。1.2、断点测试:在程序的某一行或者某一环节设置断点,在程序请求的过程中,修改断点处的参数、请求或者响应,借此定位问题,这类断点测试主要用于接口测试。2、断点测试的意义断点测试可以通过查看接口返回数据可以方便定位是前端还是后

2021-04-06 17:14:21 4429 1

转载 火狐调试工具-DevTools

狐调试工具-DevTools咱们做写js代码的时候,遇到的一个最大的问题就是调试问题,很多开发者在写js代码的时候,经常都非常痛苦。但是我们如果掌握好相应的调试工具,那么就可以比较游刃有余的解决js的调试问题。工欲善其事,必先利其器。调试工具比较好的有火狐的firebug,另外chrome的自带调试工具也非常不错(英文版)。掌握好这些调试工具,可以更好的学习js,也可以大大提高咱们完成js的排错能力。因此,我建议所有要使用js的人员都最好能好好的掌握一...

2021-03-21 15:57:09 836

原创 jacoco代码覆盖率报告分析详解

详见:https://www.jianshu.com/p/ef987f1b6f2f

2021-03-17 19:30:46 1879

原创 python练习题中的知识点小记

1、range()函数range()函数的用法有两种,如下:1.1、range(10),即取0-9的数字,如下:1.2、range(1,10),即取1-9的数字,如下:>>> range(10)[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]>>> range(1,10)[1, 2, 3, 4, 5, 6, 7, 8, 9]...

2021-03-12 17:52:59 152

原创 关于测试的一些思考

作为一名软件测试工程师,总会有一些疑问与思考,但是过了这个时间可能会忘记这些思考,所以,我准备将它记录下来,避免重复思考。1、测试时,如何才能真实的提高测试效率,包括面对阻塞性问题,还可以在规定时间内交付软件,并保证质量?...

2021-03-12 10:50:47 342 2

原创 解决 ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/tmp/mysql.sock‘ (2)超详细

前言 最近在了解Python链接数据库操作,想随心所欲的插入删除数据,下了一个mysql的服务,安装完成之后,卡在了第一行命令,不能前进,在网上查了一下之后立刻解决了,记录一下。 复现过程 安装成功mysql服务,安装教程参考:https://www.cnblogs.com/yinzhengjie/p/10125609.html 在命令行中进入mysql:$ mysql -u root -pEnter password: ERROR 2002 (HY000): Can't con..

2021-03-09 20:41:55 69110 24

原创 python习题练习

day03 作业实现IP地址转换。如 10.3.9.12 转换规则为: 10 00001010 3 00000011 9 00001001 12 00001100再将以上二进制拼接起来计算十进制结果:00001010 00000011 00001001 00001100 = ?########### 答案 ##############str

2021-01-08 14:23:44 266 1

原创 学习python数据类型 — 字典

一、学习python数据类型 — 字典1、字典定义:{key1:value1,key2:value2}1、键与值用冒号“:”分开;2、项与项用逗号“,”分开;示例:shtdent = { "name":"小花", "age": 18, "grade": "六年级"}字典的特点:1、 key-value结构2、key必须为不可变数据类型、必须唯一3、可存放任意多个value、可修改、可以不唯一4、无序5、查询速度快,且不受dict的大小影响,至

2020-12-17 13:40:30 808 2

原创 学习python数据类型 — 字符串

一、学习python数据类型 — 字符串1、字符串定义:字符串是一个有序的字符的集合,用于存储和表示基本的文本信息,’ ‘(单引号)或’’ ‘’(双引号)或’’’ ‘’’(三引号)中间包含的内容称之为字符串字符串的特点:按照从左到右的顺序定义字符集合,下标从0开始顺序访问,有序;可以进行切片操作;不可变,字符串是不可变的,不能像列表一样修改其中某个元素,所有对字符串的修改操作其实都是相当于生成了一份新数据。补充:1.字符串的单引号和双引号都无法取消特殊字符的含义,如果想让引号内

2020-12-14 21:13:01 158

原创 学习python的数据类型——元组

一、学习python数据类型-元组1、元组定义:()内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素。元组的特点:1、可存放多个值;2、按照从左到右的顺序定义列表元素,下标从0开始顺序访问,有序;3、不可修改指定索引位置对应的值,不可变。1.1、元组的创建,可参考如下方式:### 方式一:In [32]: students = ("小花",1,2,3,4,"jj","ll","ff",3,8,9)In [33]: studentsO≥ut[33]: ('小花'

2020-12-13 18:46:28 291

空空如也

空空如也

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

TA关注的人

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