自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 资源 (7)
  • 问答 (5)
  • 收藏
  • 关注

转载 性能测试入门指南

随着5G时代的到来,以及万物互联时代的到来,云应用和云服务会越来越多,数据量会指数级增长。尤其是2020年全球疫情的时代意义,会导致各行各业开始上云。从而会催生出极具个性化的各类产品的诞生。所有行业的生态会像鲸落效应一样,围绕若干个巨无霸公司衍生出满足人们各种需求的中小型产品。大部分产品的形态可能会变成重服务端、轻客户端。所以,服务端性能测试的需求也有可能会出现井喷式增长。但是服务端性能测试需求对于中小型公司,尤其是大部分不关注用户体验的公司来说,性能测试需求特点是周期短、时间紧。轻量级性能测试工具。...

2022-07-25 13:58:13 445

原创 如何区分是前端BUG还是后端BUG

1 基于经验前端BUG特点:(1)界面排版、布局错误、兼容性问题(2)网络不稳定导致JS或CSS未完全加载或请求超时(一般不需要提BUG),正常网络下加载超时后端BUG特点:业务逻辑、性能问题、数据问题、安全性问题2 通过HTTP请求和响应信息可以通过浏览器开发者工具(F12)、postman、fiddler(移动端可通过该工具抓包)、Charles、Proxyman、Wireshark、HttpCanary、tcpdump等工具。前端BUG:(1)没有发出请求,或请求参数、地址不正确(

2022-05-17 22:39:10 7445

原创 Fiddler抓包

Fiddler抓包1 什么是fiddler?1.1 概念1.2 使用场景1.3 工作原理2 HTTP协议3 Fiddler工具详解3.1 Fiddler 菜单栏3.2 Fiddler工具栏3.3 Fiddler会话列表3.4 辅助标签+工具栏3.5 命令行/状态栏1 什么是fiddler?1.1 概念fiddler是位于客户端和服务器端的HTTP代理,目前最常用的抓包或是web调试工具之一。可以通过fiddler查看浏览器的所有HTTP/HTTPS流量、查看和分析请求内容细节、伪造客户端请求和服务端响

2022-03-18 19:03:06 1915

原创 直接赋值、浅拷贝和深拷贝

import copy# 可变类型list1 = [1,2,3,4,5]a = [2,2,list1]print(id(list1)) # 4321212800b = aa_copy = copy.copy(a)print(id(a_copy[2])) # 4321212800a_deepcopy = copy.deepcopy(a) # 4322352192print(id(a_deepcopy[2]))print("****打印数值****")print(a) # [2,2,[1,

2022-03-01 21:26:39 162

原创 Python+requests库实现接口自动化

Python+requests库实现接口自动化1 Requests库1.1 安装1.2 发送HTTP请求1.2.1 GET请求1 Requests库Requests库是使用Python编写的,采用Apache2 Licensed 开源协议,基于urllib库进行二次封装的HTTP库,Requests库中封装了相应接口测试的方法。1.1 安装打开终端,输入pip install requests安装requests库,输入pip show requests,若显示版本信息,则表示安装成功。遇到的

2022-02-19 13:16:22 1077

原创 软件缺陷管理

缺陷管理1 缺陷定义2 缺陷的判定标准3 缺陷产生的原因4 缺陷产生的根源5 缺陷信息6 缺陷状态7 BUG类型8 严重程度9 优先级10 缺陷跟踪11 缺陷密度12 缺陷数据分析12.1 关注的问题12.2 重要性12.3 数据指标13 寻找缺陷的方法1 缺陷定义从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题;从外部看,软件缺陷是系统所需要实现的某种功能的失效或违背。—IEEE 1983 of IEEE Standard 729软件缺陷就是软件产品中所存在的问题,最终表

2022-02-18 22:45:00 771

原创 软件测试文档

软件测试文档1 《测试计划》2 《测试方案》3 《测试用例》4 《测试报告》1 《测试计划》《测试计划》是描述了要进行测试活动的范围、方法、资源和进度的文档核心内容:明确的测试目标与范围执行计划的角色与职责任务的进度安排与资源分配风险估计和应急计划测试的准入准出标准2 《测试方案》《测试方案》是从测试的技术角度分析需求,在方向上明确怎么测,分析结果重点在于测试策略与技术实现核心内容:测试策略测试环境规划测试工具的设计和选择3 《测试用例》《测试用例》是为特定目的而设计

2022-02-16 22:45:00 1508

原创 黑盒测试用例设计方法

黑盒测试用例设计方法1 等价类划分法2 边界值法3 判定表法4 因果图法5 正交排列法6 场景法7 流程分析法8 错误推测法9 状态迁移法10 测试方法的选择1 等价类划分法解决如何选择适当的数据子集来代表整个数据集的问题,通过降低测试的数目去实现“合理的”覆盖,以此发现更多的软件缺陷。等价类划分法即把所有可能输入的数据划分为若干个区域,然后从每个区域中取少数有代表性的数据进行测试即可。有效等价类: 满足需求的数据无效等价类: 不满足需求的数据需求:等价类划分:测试点:2 边界值法

2022-01-27 22:15:00 2063

原创 软件测试流程

step1: 熟悉项目和项目中的数据库表step2:需求评审step3:编写测试计划和方案step4: 编写和评审测试用例step5: 执行用例和BUG跟踪step6: 编写测试报告

2022-01-26 22:00:00 1135

原创 软件测试基础理论

软件测试基础理论1 什么是软件测试2 测试目的3 软件测试的原则4 软件测试分类4.1 按测试阶段4.1.1 单元测试4.1.2 集成测试4.1.3 系统测试4.1.4 验收测试4.2 按是否查看源代码4.2.1 黑盒测试4.2.2 白盒测试4.2.3 灰盒测试4.3 按是否运行4.3.1 静态测试4.3.2 动态测试4.4 是否自动化4.4.1 手工测试4.4.2 自动化测试4.5 其他测试4.5.1 冒烟测试4.5.2 回归测试4.5.3 随机测试4.5.4 探索性测试5 软件开发和测试模型5.1 开发

2022-01-22 22:45:00 781

原创 JavaScript基础

JavaScript基础1 JavaScript书写位置2 元素定位和样式设置3 变量4 事件5 innerHTML属性6 自定义函数1 JavaScript书写位置(1)行内:写在标签的属性里,这个属性必须是事件属性,不推荐使用(2)内嵌:在HTML文件中,放在script标签里<script type="text/javascript">js代码</script>(3)外链:在单独的js文件里,在HTML文件中,通过script的src属性引用到页面中<script

2022-01-20 22:00:00 89

原创 HTML基础

HTML基础1 Web相关名词2 HTML1 Web相关名词(1)www:全球广域网,也叫万维网。网站服务(2)网站:由多个网页组合在一起的页面集合,本质就是一种基于HTTP协议和超文本标记语言的跨平台分布式图形信息系统(3)网页:通过浏览器展示 包含图片、文字、链接、声音等内容的一种HTML文件2 HTML(1)HTML即超文本标记语言,主要用来书写网页,目前市面上主推的HTML版本是HTML5。(2)W3C是一个负责制定HTML语法规则的组织。(3)浏览器生产厂商生产不同浏览器,用来解析

2022-01-19 22:45:00 479

原创 CSS基础

CSS基础1 CSS书写位置2 选择器2.1 选择器分类2.2 标签名选择器2.3 类名选择器2.4 id选择器2.5 后代选择器2.6 并列选择器2.7 复合选择器的优先级3 盒子模型3.1 边框:border3.2 内填充:padding3.3 外边距:margin4 CSS3新特性1 CSS书写位置(1)行内:将style当作标签本身的一个属性,它的属性值为具体的样式(2)内嵌:将以下代码写在HTML的head标签里,title标签下<style type = "text/css"&gt

2022-01-19 14:53:04 430

原创 MySQL数据库

MySQL数据库1 常用数据类型2 SQL语言2.1 注释2.2 分类2.3 字段的约束2.4 数据定义语言(DDL)2.4.1 CREATE2.4.1.1 创建数据库2.4.1.2 创建数据库表格2.4.1.3 创建视图2.4.1.4 创建存储过程2.4.2 DROP2.4.2.1 删除数据库表格2.4.2.2 删除视图2.4.3 TRUNCATE2.4.3.1 删除数据表内容2.4.4 ALTER2.4.4.1 修改数据库表格2.3.6 修改查询命令2.3.7 删除查询命令2.4 常见的1 常用数据类

2022-01-17 23:15:00 268

原创 MySQL常见问题解决方案

问题1:Mysql启动问题1.1 使用mysqld命令启动mysql报错 [ERROR] [MY-010119] [Server] Aborting问题详情:2022-01-14T05:43:12.932662Z 0 [ERROR] [MY-013276] [Server] Failed to set datadir to '/usr/local/mysql-8.0.26-macos11-x86_64/data/' (OS errno: 13 - Permission denied)2022-01

2022-01-17 20:45:00 955 1

原创 Linux操作系统

Linux操作系统1 Linux发展史2 Linux的内核版本和发行版本2.1 内核版本2.2 发行版本3 Linux应用领域3.1 服务器领域3.2 嵌入式领域3.2 个人桌面领域4 Linux系统目录结构5 Linux常用命令5.1 历史命令5.2 自动补全5.3 修改屏幕分辨率5.4 放大缩小终端字体大小5.5 查看帮助5.6 查看当前所在目录5.7 显示目录内容5.8 修改目录/文件权限5.9 切换目录5.10 创建空文件或修改文件最后修改时间5.11 创建目录5.12 删除文件或目录5.13 文件

2022-01-13 00:05:50 868

原创 Postman

接口测试工具1 浏览器插件2 Jmeter3 Postman3.1 使用Postman发送HTTP请求3.2 用例集 Collection3.3 Postman断言3.3.1 常用断言(1) 响应状态码(Status code is 200)(2) 响应体是否包含某个字符串(Response body: Contains string)(4) 响应体是否等于某个字符串/对象(Response body: Is equal to a string)(4) JOSN数据(Response body: JSON

2022-01-06 23:30:04 9591 1

原创 接口测试—分析维度&接口用例&文档

1 接口测试用例设计2 接口文档3 接口测试工具3.1 浏览器插件(1)Google:Postman(2)Firefox:RESTClient3.2 Jmeter3.1 Postman3.2 Jmeter

2022-01-05 23:39:27 9443

原创 接口测试——接口和接口测试的概念&HTTP协议&接口风格&接口测试流程

接口测试

2021-12-29 23:17:23 2630

原创 Web自动化—UnitTest框架

Web自动化——UnitTest框架

2021-12-27 16:22:12 997

原创 Web自动化——frame切换&多窗口切换&窗口截图&验证码处理

1 frame切换1.1 什么是frame?frame是HTML页面中的一种框架,主要作用是在当前页面中指定区域显示另一页面元素;frame的两种形式:# 形式一:<frameset cols="25%,75%"> <frame src="frame_a.htm"> <frame src="frame_b.htm"></frameset># 形式二:<iframe name="iframe_a" src="demo_ifra

2021-12-22 22:49:42 1212

原创 Web自动化——元素等待

元素等待指在定位页面元素时,若未找到该元素,在指定时间内一直等待的过程。一般在电脑配置地、网络速度慢、服务器处理请求慢的情况下设置元素等待。元素等待分为显示等待和隐式等待。1 显示等待1.1 概念在定位指定元素时,若能定位到该元素则返回该元素,不触发等待;若不能定位到该元素,则间隔一段时间重新定位该元素;若达最大时长还未找到该元素,则抛出异常 TimeoutException1.2 实现方式step1: 导入WebDriverWait包:from selenium.webdriv

2021-12-21 22:34:56 482

原创 Web自动化——下拉选择框&弹出框&滚动条操作

1 下拉选择框(元素)操作step1: 导入Select类:from selenium.webdriver.support.select import Selectstep2: 实例化Select类:select = Select(element)step3: 调用方法:根据索引定位(从0开始):select_by_index(index)根据属性值定位:select_by_value(value)根据显示的文本定位:select_by_visible_text(text)2

2021-12-21 21:34:45 1667

原创 Web自动化——元素操作&浏览器操作&获取元素信息&键鼠操作方法

1 元素操作方法通过元素操作模拟用户进行数入或删除元素内容,模拟点击操作等。element = driver.find_element(By.ID,“id名”)(1) 点击:element.click()(2) 输入内容:element.send_keys(输入内容)(3) 清除文本:element.clear()2 浏览器操作方法(1)最大化窗口:driver.maximize_window()模拟点击浏览器最大化按钮。(2)设置浏览器窗口大小:driver.set_window_siz

2021-12-20 23:04:07 1948

原创 Web自动化——元素定位

元素定位就是通过元素的信息或元素层级结构来定位元素。要使用Web自动化操作元素,必须首先找到此元素。1 元素定位方式1.1 基于元素属性特有的定位方式(1) id: element = driver.find_elements_by_id(id)id定位就是通过元素的id属性来定位元素, HTML规定id属性在整个HTML文档中必须是唯一的。(2) name: element = driver.find_elements_by_name(name)name定位就是根据元素name属性来定位。 H

2021-12-19 22:00:04 801 1

原创 Web自动化——selenium自动化环境搭建以及脚本编写基本步骤(基于Python)

1 环境搭建step1: 安装Python环境(1)安装Python安装包:Python官网下载Python直接安装,官网下载地址:https://www.python.org/downloads/(2)安装Python可视化环境,如PyCharm,PyCharm下载地址:https://www.jetbrains.com/pycharm/download/#section=macstep2: 安装selenium包Selenium WebDriver是一个第三方模块,并不是Python的标准

2021-12-19 15:45:00 2697

原创 Web自动化——Selenium的特点和发展历程

1 Web自动化测试主流工具工具名称说明Selenium开源的web自动化测试工具,主要做功能测试QTP商业化的功能测试工具,支持web,桌面自动化测试Robot framework基于Python可扩展地关键字驱动的测试自动化框架2 SeleniumSelenium是一个开源的Web自动化测试工具。2.1 特点开源,可以根据需要自定义某些功能跨平台,支持Windows、Mac、Linux支持多种语言,Python、Java、C#、JavaScrip

2021-12-19 12:30:33 382

原创 什么是自动化测试?

1. 什么是自动化?自动化(Automation)是指机器设备、系统或过程(生产、管理过程)在没有人或较少人的直接参与下,按照人的要求,经过自动检测、信息处理、分析判断、操纵控制,实现预期的目标的过程。1.1 自动化的优点高度的自动化程序,无需人工操作,减少人工劳动力提高工作效率生产流程稳定,使产品规格统一标准适合大批量生产,降低了企业生产成本2. 什么是自动化测试?软件测试是指通过手工或工具,对被测软件进行测试操作,从而验证实际结果与预期结果是否一致的过程。自动化测试是把以人为驱动

2021-12-19 11:24:55 1010

原创 Python异常和模块

1. 异常

2021-12-16 23:15:00 285

原创 Python面向对象

1. 面向过程和面向对象(1)面向过程1)过程和函数过程是早期的一个编程概念,类似于函数,只能执行,但是没有返回值;函数不仅能执行,还可以返回结果。2)使用把完成某一个需求的所有步骤从头到尾逐步实现;根据开发需求,将某些功能独立的代码封装成一个又一个的函数;最后完成的代码,就是顺序地调用这些函数。3)特点注重步骤与过程,不注重职责分工如果需求复杂, 代码会变得很复杂开发复杂项目,开发及维护难度大(2)面向对象1)使用相比较函数,面向对象是更大的封装,根据职责在

2021-12-16 21:15:00 368

原创 Python文件

1. 概念计算机的文件, 就是存储在某种长期储存设备上的一段数据,长期存储设备包括: 硬盘、 U 盘、 移动硬盘、 光盘等。在计算机中,文件最终以二进制的方式存储在硬盘上。文件分为文本文件和二进制文件。文本文件可以使用文本编辑器打开,本质还是二进制的文件;二进制文件不能使用文本编辑器打开,但是可以使用特殊的软件打开 ,如:图片、视频、音频等。2. 文件操作步骤step1: 打开文件step2: 读、写文件step3: 关闭文件2. 文件操作方法(1)打开文件: 文件对象名 = file.

2021-12-15 20:00:00 430

原创 Python列表推导式

1. range()函数(1)语法range(起始位置, 结束位置, 步长)(2)作用按步骤生成整数序列的对象2. 列表推导式(1)语法[ 表达式 for 变量 in range(范围值) ](2)作用根据需求快速生成一个列表(3)举例1)基本方式a = [i for i in range(4)]print(a) #输出结果:[0, 1, 2, 3]a = [x for x in range(3, 4)] #结果:a = 32) 在循环的过程中使用i

2021-12-15 12:45:00 694

原创 Python运算符作用于高级变量

1. 合并(+)str1 = [1,2,3]str2 = [4,5,6]print(str1 + str2) #输出:[1,2,3,4,5,6]2. 重复(-):支持字符串、列表和元祖print("*" * 10) #输出:**********3. 比较运算符(> < >= <= ==): 支持字符串、列表和元祖print((1,2,3) < (2,3,4)) #输出:True4. 成员运算符(1) in如果在指定的序列中找到值返回 True,

2021-12-14 23:12:30 158

原创 Python常用内置函数

1. len(item)计算容器中元素个数2. del(1)del 容器名[索引]通过索引删除容器中元素(2)del( 容器名[索引] )del( ) 函数 通过索引删除容器中元素(3)del 容器名将容器从内存中删除(4)del( 容器名 )del( )函数 将容器从内存中删除注意:字符串和元祖不支持 del 容器名[索引] 或 del( 容器名[索引] )4. max(item)返回容器中元素最⼤值如果是字典, 只针对 key 比较5

2021-12-13 23:18:57 898

原创 Python基础

Python基础Python语言在1989年由吉多.范罗苏姆(龟叔)创造。第一款C语言Python解释器在1991年诞生。1. Python优点简单易学,适用人群广泛免费,开源应用领域广泛自动化测试网络爬虫Web开发自动化运维数据分析人工智能机器学习2. Python缺点运行速度稍慢3. 语言常见分类编译型和解释型静态型和动态型强类型和弱类型4. 编译与解释(1)编译特点:把程序源代码都编译成机器语言(二进制),保存为二进制文件(一次全部编

2021-12-09 21:24:23 196

原创 敏捷开发框架—Scrum

ScrumScrum是一个敏捷开发框架,是一个增量的,迭代的开发过程。在这个开发框架中,整个开发周期包括若干个小的迭代周期,每个小的迭代周期成为一个Sprint,每个Sprint的周期建议为2-4周。在Scrum中,将产品Backlog按商业价值排出需求列表。在每个迭代中,开发团队从产品Backlog中挑选最有价值的需求进行开发,实现完成后产品推出市场,进入下一个迭代。 Sprint:项目开发过程中的最小迭代周期,包含需求分析->设计->编码->测试->发布 Backlo

2021-12-02 22:57:34 2165

原创 敏捷开发模型概念

敏捷开发概念敏捷开发以用户的需求进化为核心,采用迭代,循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子系统,各个子系统的成果都经过测试,具备可视,可集成和可运行使用的特征。换言之,就是把一个大的项目分为多个相互联系,但也可以独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。敏捷框架模型价值观:我们通过身体力行和帮助他人来揭示更好的软件开发方式。经由这项工作,我们形成了如下价值观:个体和互动 高于 流程和工具可用的软件 高于

2021-12-02 22:30:34 2322

原创 APP测试

APP应用架构APP架构和WEB架构的异同点:相同点:APP和WEB使用的后端服务器是相同的;前后端都是用HTTP协议进行交互(部分APP使用socket)。不同点:APP是C/S架构,WEB是B/S架构;APP前后端交互的数据以JSON为主,WEB前后端交互的数据以HTML为主。...

2021-12-02 16:46:09 713

原创 Mac使用brew安装Jenkins时usr/local/bin “not writable”问题解决方案

Mac使用brew安装Jenkins时usr/local/bin “not writabl”问题解决方案首先查看usr/local/bin是否有权限进行操作1 无操作权限1.1更改目录所有权1.2为usr/local/bin写入权限2 有操作权限2.1 查看usr/local/bin是否被加锁2.2 若被加锁则解除锁首先查看usr/local/bin是否有权限进行操作 chmod u+w/usr/local/bin1 无操作权限1.1更改目录所有权sudo chown -R $(whoami)

2021-11-24 10:53:23 553

原创 使用StatSVN统计代码量(MAC系统)

使用StatSVN统计代码量(MAC系统)一、前置准备安装SVN命令行工具,打开终端,命令行输入: brew install svn(若提示:zsh: command not found: brew),先安装brew,命令行输入:/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"二、操作步骤使用 cd 命令进入 "statsvn.jar"存放目录将要统计的代

2021-11-24 10:25:55 376

软件架构设计.xmind

软件架构设计.xmind

2020-04-24

基于CMMI的软件工程及实训指导.xmind

基于CMMI的软件工程及实训指导.xmind

2020-04-24

Kettle学习资料大全.rar

Kettle学习资料大全

2020-01-14

CMMI-DEV-v1.3-Simplified-Chinese-FINAL.pdf

CMMI-DEV-v1.3-Simplified-Chinese-FINAL

2020-01-14

SqlServer数据库下载

SqlServer数据库下载

2018-09-22

前端必看的100本PDF电子书

关于前端的100本PDF数书籍

2018-09-20

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

TA关注的人

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