自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Linux下建立git远程仓库

设置本地Git仓库和GitHub仓库之间的连接:第1步:创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id _rsa.pub这两个文件,如果有,直接跳到下一步。如果没有,创建SSH Key:$ ssh-keygen -t rsa -C "[email protected]"//需把邮件地址换成你自己的邮件地址

2018-04-11 23:54:22 3359 2

原创 Linux编译器gcc/g++的使用

库的概念1.库的定义  本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。2.库的分类  linux 下的库有两种:静态库和共享库(动态库)。 二者的不同点在于代码被载入的时刻不同。 静态库的代码在编译过程中已经被载入可执行程序,因此体积较大。  共享库的代码是在可执行程序运行时才载入内存的,在编译过程中仅简单的引用,可以节省系统开销,因此代码体积较...

2018-04-01 21:41:51 1091

原创 日报小工具 - 钉钉定时发送Wiki日报

测试日报是用来记录每天测试工作的完成情况、发现的问题,以及问题修复进度,以便团队了解项目进展、及时调整计划,并保持信息同步交流。每日发送测试日报属于重复性工作,开发日报小工具结合Jenkins进行定时自动发送,有效节约人力成本,提高了整体测试效能。

2024-03-21 18:55:08 553

原创 SoloX - Android/iOS性能数据实时采集工具

SoloX是一个可以实时收集Android/iOS性能数据的web工具。快速定位分析性能问题,提升应用的性能和品质。无需ROOT/越狱,即插即用。无需ROOT/越狱: Android设备无需Root,iOS设备无需越狱。有效解决Android和iOS性能的测试和分析挑战。数据完整性:我们提供CPU、GPU、内存、电池、网络、FPS、卡顿等数据,您可以轻松获取。精美报告:精美详细的报告分析,无论您身在何处或何时,都可以在何处存储、可视化、编辑、管理和下载使用 SoloX 收集的所有测试用例。

2024-03-15 15:28:06 1365 1

原创 Android APP性能指标(二)

在上一篇中我们对CPU、内存、FPS和GPU四个常关注的指标进行学习。本文将从响应时间、电量、流量等指标来了解Android性能。

2024-03-07 16:01:52 870

原创 Android APP性能指标(一)

本文围绕以下性能指标介绍测试Android端的测试方法:1、启动时间:启动APP所需时间2、流畅度:也称为帧率FPS,指画面每秒传输帧数;帧率越大,页面越流畅。3、过渡绘制:过度绘制描述的是屏幕上的某个像素在同一帧的时间内被绘制了多次。4、内存:占用系统内存的大小5、CPU:对系统CPU的占用率6、流量:流量消耗7、电量:电量消耗

2024-03-01 16:47:10 1028

原创 JQL语法及Python查询 Jira issue信息

JIRA 的 JQL 语法由以下几个元素组成:field (字段) : 就是要搜索的JIRA Issue 的各个字段operator(运算符或者也叫操作符):如 =, < , > , in 等value(值):具体要查询的字段匹配的值keyword(关键字): keyword这个字面上理解可能会带来些歧义function(方法):即JIRA提供的一些方法,如 now()表示当前时间,currentUser()表示当前用户等

2024-02-04 12:17:59 1181

原创 Python string模块中Template的substitute()使用

substitute(mapping={}, /, **kwds)执行模板替换,返回一个新字符串。 mapping 为任意字典类对象,其中的键将匹配模板中的占位符。 或者你也可以提供一组关键字参数,其中的关键字即对应占位符。 当同时给出 mapping 和 kwds 并且存在重复时,则以 kwds 中的占位符为优先

2024-01-09 18:39:40 503

原创 【已解决】Original error was: No module named ‘numpy.core._multiarray_umath‘

今天在执行pandas代码时,报错Original error was: No module named ‘numpy.core._multiarray_umath’,原因是numpy版本太低了,需要升级版本。

2023-12-28 18:15:38 1333

原创 获取Android和iOS崩溃日志的方法

App测试过程中难免会遇到崩溃,本文介绍一些常用的获取崩溃的方法

2023-12-27 18:03:34 1417

原创 前端基本性能指标及lighthouse使用

浏览器提供的performace API,这也是性能监控数据的主要来源,performace提供高精度的时间戳,精度可达纳秒级别,且不会随操作系统时间设置的影响。目前主流浏览器都支持。Lighthouse 是一个网站性能测评工具, 它是 Google Chrome 推出的一个开源自动化工具,能够对 PWA 和网页多方面的效果指标进行评测,并给出最佳实践的建议以帮助开发者改进网站的质量。它能够生成一个有关页面性能的报告,通过报告我们就可以知道需要采取哪些措施来改进应用的性能和体验。

2023-12-26 15:30:59 1278

原创 正则表达式和BeautifulSoup

正则表达式是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。它描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。由一些普通字符和一些元字符(metacharacters)组成。普通字符包括大小写的字母和数字,而元字符则具有特殊的含义。

2023-06-30 17:47:44 1060

原创 BeautifulSoup简单用法

Beautiful Soup 提供一些简单的、python 式的函数用来处理导航、搜索、修改分析树等功能。它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单,所以不需要多少代码就可以写出一个完整的应用程序。Beautiful Soup 自动将输入文档转换为 Unicode 编码,输出文档转换为 utf-8 编码。你不需要考虑编码方式,除非文档没有指定一个编码方式,这时,Beautiful Soup 就不能自动识别编码方式了。然后,你仅仅需要说明一下原始编码方式就可以了。

2023-06-25 17:39:46 714

原创 【已解决】Python3使用urlopen()方法报错

urllib.error.URLError:

2023-05-10 17:44:26 565 1

原创 常用压测工具对比

压测,即压力测试,是确立系统稳定性的一种测试方法,通常在系统正常运作范围之外进行,以考察其功能极限和隐患。主要检测服务器的承受能力,包括用户承受能力(多少用户同时玩基本不影响质量)、流量承受等。压测的目的就是通过压测(模拟真实用户的行为),测算出机器的性能(单台机器的QPS),从而推算出系统在承受指定用户数(100W)时,需要多少机器能支撑得住。

2023-03-23 18:59:53 2319

原创 Android Crash和ANR监控

本文主要用来了解客户端Crash和ANR知识,总结两者的差别,以及在测试过程中如何关注。闪退分为Java层的闪退和native层的闪退。

2023-03-10 16:06:43 1142

原创 Shell脚本基础知识总结-思维导图

Shell 脚本(shell script),是一种为 shell 编写的脚本程序。业界所说的 shell 通常都是指 shell 脚本,但读者朋友要知道,shell 和 shell script 是两个不同的概念。由于习惯的原因,简洁起见,本文出现的 "shell编程" 都是指 shell 脚本编程,不是指开发 shell 自身。

2022-09-20 20:17:25 826

原创 钉钉添加自定义机器人,实现每周定时@某人

钉钉添加自定义机器人,实现每周定时@某人

2022-09-06 17:06:31 6115

原创 一些Java相关的知识点

一些Java相关的知识点,目的是能看懂Java代码即可

2022-09-06 15:33:25 283

原创 【已解决】执行UI自动化脚本报错AttributeError: ‘WebDriver‘ object has no attribute ‘w3c‘

通过官网源码安装Appium-Python-Client 2.1.2版本后运行脚本报错

2022-07-11 18:58:07 1142

原创 测试工作中常见问题及优化方案

本文内容主要总结日常测试过程中遇到的问题,并总结对应的优化方案

2022-07-08 18:33:45 5528

原创 【已解决】本地安装mitmproxy后执行mitmproxy --version报错:ModuleNotFoundError: No module named ‘_cffi_backend‘

【已解决】本地安装mitmproxy后执行mitmproxy --version报错:ModuleNotFoundError: No module named '_cffi_backend'

2022-06-17 17:25:02 1081

原创 测试工程师测试前期工作流程

本文主要介绍测试工程师在测试前期的整体工作流程(仅供参考)

2022-05-20 17:37:45 563 1

原创 【已解决】AttributeError: ‘str‘ object has no attribute ‘items‘

报错信息:上面的问题其实很简单,意思是说str类型没有items属性,而items属性是字典的属性。此处是因为headers本应为dict,实际传入了str。修改建议:# head = 'Mozilla/5.0'head = {'User-Agent': 'Mozilla/5.0'}修改后再次运行就不再报错:...

2022-04-22 12:20:19 7904 1

原创 最简单的安装Appium-Python-Client方法

前提:Python环境已配置1、官网下载源码:https://pypi.org/project/Appium-Python-Client/#files也可下载历史版本:2、解压下载后的包3、进入appium-python-client 的解压路径下输入:python setup.py install , 回车即可安装成功...

2022-04-21 18:27:52 4170 1

原创 JavaScript思维导图

文章目录1、数据类型2、变量3、运算符4、数组5、函数基础6、流程语句7、字符串函数8、正则表达式9、Windows对象10、DOM基本操作1、数据类型2、变量3、运算符4、数组5、函数基础6、流程语句7、字符串函数8、正则表达式9、Windows对象10、DOM基本操作...

2022-04-14 16:34:50 714

原创 JavaScript总结

文章目录一、JavaScript简介二、JavaScript用法1、嵌入HTML2、外部的JavaScript脚本3、Console窗口调试JavaScript代码4、Chrome snippets小脚本5、事件触发三、JavaScript变量1、声明变量2、数据类型3、算术运算符4、赋值运算符5、比较运算符6、逻辑运算符四、基本语法1、条件语句1.1 if 语句1.2 if...else 语句1.3 if...else if....else 语句1.4 switch 语句1.5 三目运算2、循环语句2.1

2022-03-31 15:24:08 1057

转载 Locust性能自动化—API汇总整理(下)

文章目录1、HttpSession class1.1 定义1.2 类及用法2、Response class2.1 定义2.2 类及用法3、ResponseContextManager class3.1 定义3.2 类及用法4、Exceptions4.1 exception InterruptTaskSet4.2 exception RescheduleTask4.3 exception RescheduleTaskImmediately5、Environment class5.1 定义5.2 类及用法6、E

2022-03-29 14:40:00 626

原创 Locust性能自动化—API汇总整理(上)

文章目录1、引言2、User class2.1 定义2.2 类及用法3、HttpUser class3.2 类及用法4、TaskSet class4.1 定义4.2 类及用法5、task decorator5.1 类及用法6、tag decorator6.1 类及用法7、Sequential TaskSet class7.1 定义7.2 类及用法8、Built in wait_time functions8.1 类及用法1、引言Locust的API共有 15类,如下:① User class② H

2022-03-22 10:05:20 1291

原创 Locust性能自动化—自定义客户端测试

文章目录1、定义2、客户端代码展示3、服务端代码展示1、定义Locust以HTTP为主要目标构建。但是,通过编写触发request_success 和request_failure事件的自定义客户端,可以轻松扩展对任何基于请求/响应的系统进行负载测试。2、客户端代码展示我们使用User类XmlRpcUser的示例,来看看XmlRpcUser如何发送请求。import timefrom xmlrpc.client import ServerProxy, Faultfrom locust imp

2022-03-21 11:22:54 591

原创 Locust性能自动化—如何提高Locust性能

文章目录1、什么是FastHttpUser1.1 geventhttpclient厉害之处1.1.1 初识geventhttpclient1.1.2 geventhttpclient实例展示1.1.3 高并发-代码实战1.1.4 数据流-代码实战2、如何使用FastHttpUser3、FastHttp 的API 类3.1 FastHttpUser类3.2 FastHttpSession类3.3 FastResponse类1、什么是FastHttpUserLocust 默认客户端使用的是python-r

2022-03-17 15:00:59 1576

原创 requests库的7个主要方法

1、requests库的7个主要方法方法说明requests.request()构造一个请求,支撑一下各方法的基础方法requests.get()获取HTML网页的主要方法,对应HTTP的GETrequests.head()获取HTML网页头的信息方法,对应HTTP的HEADrequests.post()向HTML网页提交POST请求方法,对应HTTP的POSTrequests.put()向HTML网页提交PUT请求的方法,对应HTTP的PUTr

2022-03-14 16:20:32 1715

原创 Locust性能自动化—代码实战

文章目录1、Locust实例展示1.1 官网代码示例1.2 代码模板及执行顺序2、Locust类代码分析2.1 实例代码展示2.2 class TaskSet 用法及展示2.2.1 定义2.2.2 代码展示3、Locust高级用法3.1 关联3.2 参数化3.2.1 参数化的意义3.2.2 三个场景认识参数化3.3 检查点4、Locust运行模式4.1 单进程运行模式4.1.1 定义及解析4.1.2 有Web UI模式4.1.3 无Web UI模式4.1.4 启动locust4.2 多进程分布式运行4.2.

2022-03-11 20:32:24 2556 1

原创 Locust性能自动化-Locust介绍

文章目录1、Locust基本介绍1.1 引言1.2 简介2、Locust安装方式2.1 安装 locust2.2 安装成功确认3、Locust 参数说明3.1 参数信息3.2 Locust主要库4、Locust类说明4.1 client属性4.2 其他属性4.2.1 task_set4.2.2 max_wait/min_wait4.2.3 host4.2.4 weight5、Loucst执行流程6、性能测试工具比较1、Locust基本介绍1.1 引言  现在不管是互联网行业或者是传统行业,对性能的要求

2022-03-04 10:32:10 1978

原创 UIAutomator2的使用教程

uiautomator2是一个python库,用于Android的UI自动化测试,其底层基于Google uiautomator,Google提供的uiautomator库可以获取屏幕上任意一个APP的任意一个控件属性,并对其进行任意操作。

2021-12-17 18:57:19 37164 3

原创 自动遍历测试方法及常见技术

文章目录一、常见问题二、测试痛点三、思考与改进四、常见的自动遍历工具五、Maxim的使用5.1 环境预备5.2 运行方法5.3 参数说明5.4 高级用法详解5.5 常用的配置5.6 Appetizer应用一、常见问题1、功能问题app 某特定界面崩溃app 某接口报错或修改导致老版本数据显示异常某页面详情页特定信息字段内容丢失或数据异常老功能不可用,如微信分享功能2、兼容性问题网络慢时发出请求退出该页面,当前页面崩溃某些界面在 4.4 或 5.5 系统上操作体验不同二、测试痛点

2021-12-15 19:10:55 12900

原创 解决git报错 — remote: HTTP Basic: Access denied

使用git push命令后报错如下:还有一种报错为:git Failed to connect to port xxxx: Connection refused  基于这两种情况,,很大程度是第一次使用的时候登的帐户和密码跟现用的仓库帐户密码对不上,,所以就提示用户无权限连接,或者拒绝访问。这时,最好的方法是将git帐户密码重置!解决方法:  首先进入到本地仓库目录下,然后右键-点击“Git Bash Here”,在弹出的终端输入框里输入如下指令:git config --system --

2021-11-11 11:00:08 3294

原创 Locust性能自动化—初识性能测试

文章目录一、测试流程二、成败要素三、大佬看性能四、相关术语五、性能工具六、通过标准一、测试流程有了上面的流程图,接下来,我们就来详细介绍一下各个环节:业务学习:通过查看文档,或通过实际操作来了解系统的功能。需求分析:分析系统非功能需求,划定性能测试的范围,了解系统性能指标。工作评估:工作量分解,评估工作量,计划资源投入(人、日)。设计测试模型:划定性能测试范围后,把业务模型映射成测试模型。听到这句话,是不是一头雾水?什么是测试模型?通俗的说,就是 :性能测试用例设计+性能测试方案用例只

2021-11-10 16:40:26 805

原创 解决Python中requests库的session无法保存cookie的问题

  当我们在使用Python的requests库做接口自动化时,我们都知道只要使用session = requests.session()就会自动保存cookie  但当我在做公司的接口自动化项目时,发现保存的cookie不生效,通过请求登录接口后打印cookie,又发现有cookie,这里就是我比较头大了o(╥﹏╥)o  查找多方资料后,终于找到了原因,原来requests只能保持 cookiejar 类型的cookie,而我们手动构建的cookie是dict类型的。所以我们需要把dict转为 coo

2021-11-10 11:26:52 3492

原创 Python 装饰器为什么要双层嵌套及业务场景

一个普通的装饰器写法:def log(func): def wrapper(*args, **kwargs): print('被调用的函数'.format(func.__name__)) return func(*args, **kwargs) return wrapper此时有个疑问,为什么里面要嵌套wrapper函数?原因:如果没有嵌套,实际上装饰器返回的要么是原函数的定义,要么根本不是函数,也就是说函数根本没有被装饰。即使碰巧得到了想要的结

2021-10-21 11:45:33 365

空空如也

空空如也

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

TA关注的人

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