自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 怎么做接口自动化的?

一、接口自动化测试实施作用:1、当服务端改动功能或者添加新功能时,新发布程序后,避免新开发功能导致其他关联功能存在问题,通过持续集成,服务端发布触发接口测试代码运行,尽早发现问题;2、抽取部分接口测试用例,定时运行程序,对线上常用的业务操作进行监控,及时发现修复。你平时自动化测试怎么做的UI和接口相结合,通常以接口为主,UI为辅。原因:接口执行效率高,可测试的代码覆盖率高,维护成本低,属于低成本,高收益。UI自动化执行效率低,并且容易受其他原因(电脑卡顿,浏览器卡顿,网速等)影响导致脚本执行失

2021-08-10 21:01:26 1360

原创 2021-08-09

一.你们公司的测试流程是什么?需求评审,测试经理分配任务,编写测试计划,编写测试方案,写出测试用例,用例评审,执行测试用例,提交Bug,交给开发人员修改,回归测试。二.如何设计测试用例?1、用例覆盖率最大化:好的测试用例是完整的用例集合,能够完全覆盖测试需求2、测试数据的准确性:等价类划分准确,每个等价类范围的数据,测试效果一致3、测试数据的全面性:保证所有可能的边界值和边界条件涵盖在内,且正确识别设计测试用例的常见方法1、等价类划分法2、边界值分析法3、错误推测法4、因果图法5、判定

2021-08-09 21:37:27 133

原创 Android开发、adb、monkey测试

一、 手机测试概念传统手机测试 VS 手机应用软件测试传统手机测试:指测试手机本身比如抗压,抗摔,抗疲劳,抗低温高温等。也包括手机本身功能、性能等测试。手机应用软件测试 C/S Client/Server手机应用软件是基于手机操作系统之上开发出来的软件,做这样的测试就叫做手机应用软件测试。二、手机端常规1.介绍手机测试的概念架构对于手机端测试,按照平台来分,分为Android和IOS两大主流系统Android开源导致碎片化比较严重,bug比较多,而IOS通常bug会少一些。Android手

2021-08-09 08:11:59 178

原创 PO模型。

1.PO模型介绍在自动化中,Selenium自动化测试中有一个名字经常被提及PageObject(思想与面向对象的特征相同),通常PO模型可以大大提高测试用例的维护效率优点:重用,业务和对象分离,代码结构清晰,方便代码维护2.PO的核心要素在PO模式中抽离封装集成一个BasePage类,该基类应该拥有一个只实现webdriver实例的属性每一个page都继承BasePage,通过driver来管理本page中元素,将page中的操作封装成一个个方法TestCase继承unittest.Testc

2021-08-08 20:18:07 100

原创 Web自动化测试

什么是框架框架(framework)是一个框子 – 指其约束性,也是一个架子 – 指其支撑性,是一个基本概念上的结构,用于去解决或者处理复杂的问题。框架是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种定义认为,框架是可被应用开发者定制的应用骨架。前者是从应用方面而后者是从目的方面给出的定义。为什么使用框架1)自己从头实现太复杂2)使用框架能够更专注于业务逻辑,加快开发速度3)框架的使用能够处理更多细节问题4)使用人数多,稳定性,扩展性好3.selenium对浏.

2021-08-08 20:15:51 93

原创 2021-07-29

一、介绍Requests是一个很实用的Python HTTP客户端库,编写爬虫和测试服务器响应数据时经常会用到,Requests是Python语言的第三方的库,专门用于发送HTTP请求二、前提pip install requests三、get的请求3.1 GET无参请求r = requests.get(‘http://www.baidu.com’)3.2 GET传参payload = {‘key1’: ‘value1’, ‘key2’: ‘value2’, ‘key3’: None}r

2021-07-30 08:17:41 61

原创 单元测试之pytest

一、命名规则Pytest单元测试中的类名和方法名必须是以test开头,执行中只能找到test开头的类和方法,比unittest更加严谨案例import pytestfrom xml.dom import minidomclass TestPy01():def testPy001(self):print(“第一个pytest”)assert 1==1def testPy002(self): print("第二个pytest") assert 1==2def testPy0

2021-07-28 20:44:29 88

原创 Python单元测试之unittest

一、单元测试、集成测试、功能测试单元测试颗粒度最小,一般由开发小组采用白盒方式来测试,主要测试单元是否符合“设计”;是指对软件中的最小可测试单元进行检查和验证二、Unittest重要组成Python中有一个自带的单元测试框架是unittest模块,用它来做单元测试,它里面封装好了一些校验返回的结果方法(断言)和一些用例执行前的初始化操作。unittest中最核心的部分是:TestFixture、TestCase、TestSuite、TestRunnerTestFixture作用:用于一个测

2021-07-27 21:17:12 58

原创 集合和函数

一、集合1.1 集合的特征集合是无序的,集合中的元素是唯一的,集合一般用于元组或者列表中的元素去重1.2 集合的格式格式变量名=set()变量名.add(元素)#必须不能初始化或变量名={元素,元素,,,}注意:下面写法为一个空字典,为空默认是字典,如果有数据在根据格式判断为字典还是集合1.3 添加元素1.3.1 addnums = {11,24,45,96,28}nums.add(42)print(nums)#{96, 42, 11, 45, 24, 28}1.3.2 upd

2021-07-25 19:07:12 795

原创 Python列表

一、列表的介绍1.1 格式变量=[,,,]案例:namesList = [‘wangyuan’,‘xiaokai’,‘xiaoyi’]二、列表的相关操作2.1 列表的新增append, extend, insert2.1.1 append案例:列表和字符串names1.append(name)print(names1)输出:[‘xiaoWang’, ‘xiaoZhang’, ‘xiaoHua’, ‘anfly’]2.1.2 extend案例:列表和字符串names1.exte

2021-07-22 18:58:32 83

原创 python基础--语句

一、判断语句1.1 if语句的使用格式if 要判断的条件:条件成立时,要做的事情1.2 if-else的使用格式f 要判断的条件:条件成立时,要做的事情else:条件不成立时,要做的事情1.3 if-elif-else的使用格式if 要判断的条件:条件成立时,要做的事情elif 要判断的条件:条件成立时,要做的事情else:条件不成立时,要做的事情1.4 if嵌套if 要判断的条件:条件成立时,要做的事情if 要判断的条件:条件成立时,要做的事情else:条件不成

2021-07-22 18:54:43 63

原创 Jmeter压测

一、 为什么要进行数据库压测不断给数据库施加压力,验证数据库处理的性能二、如何进行数据库压测测试的过程中,我们经常要对数据库表数据进行查询、修改、添加等操作。在用 JMeter 做性能或者接口等 测试时,也可以让 JMeter 连接数据库然后对数据库数据进行相关操作。下面先来学习如何使用 JMeter 连接 MySql 数据库进行操作。三、 JDBC配置首先创建一个测试计划和线程组,然后在线程组下添加配置元件 JDBC Connection Configuration 。接下来要对数据库连接的

2021-07-21 21:33:19 77

原创 Jmeter组件介绍

一、我们为什么使用Jmeter?开源,免费,基于Java编写,可集成到其他系统可拓展各个功能插件支持接口测试,压力(负载和压力)测试等多种功能,支持录制回放,入门简单相较于自己编写框架活其他开源工具,有较为完善的UI界面,便于接口调试多平台支持,可在Linux,Windows,Mac上运行,支持多协议.二、Jmeter的作用接口测试 面试说postman,因为方便好用。性能测试 jmeter,也可以用postman(runner),但是没有性能指标数据库测试三、线程组是什么?测试计划—线

2021-07-19 20:38:53 130 1

原创 Shell介绍

1、什么是shell脚本Shell脚本与Windows/Dos下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的。但是它比Windows下的批处理更强大,比用其他编程程序编辑的程序效率更高,它使用了Linux/Unix下的命令。二、Shell脚本的规则Shell 和python都是弱语言1、变量的规则定义变量规则:变量名=值shell定义变量的规则:1:等号两边不能有空格 2:定义特殊的变量需要用单引号或者双引号结合 3:定义

2021-07-15 21:04:21 103

原创 2021-07-14

1 用工具(filezilla)把mysql-8.0.25-1.el8.x86_64.rpm-bundle文件上传至/root/ziliao目录下2 通过 cd /usr/local/ 命令进入根目录下的usr目录下的local目录,并通过 mkdir mysql 命令 在当前目录下创建一个名为 mysql 的目录,ll命令查看当前目录下的目录结构3 通过 mysql-8.0.22-1.el8.x86_64.rpm-bundle.tar 解压至/usr/local/mysql目录下4 进入/u

2021-07-14 21:45:27 101

原创 2021-07-14

1 在root目录下,创建文件夹ziliao(名字自定义)2 用工具(filezilla)把jdk-8u291-linux-x64.tar.gz文件上传至/root/ziliao目录下2 查看当前Linux系统是否已经安装javarpm -qa | grep java3 卸载两个openJDKrpm -e --nodeps 要卸载的软件4 安装jdk运行需要的插件yum install glibc.i686(选做)5 解压jdk到/usr/local下 tar –xvf jdk-7u71

2021-07-14 21:37:25 55

原创 MySQL增删改查

一、 DDL-数据库定义语言在登陆 MySQL 服务后,使用 create 命令创建数据库,语法如下:CREATE DATABASE 数据库名;在删除数据库过程中,务必要十分谨慎,因为在执行删除命令后,所有数据将会消失。语法:drop database mydb1;选择数据库 user mydb1查看数据库创建细节:show create database mydb1创建一个使用gbk字符集的数据库:create database mydb2 character set gbk二、 DML -

2021-07-13 21:21:23 61

原创 Linux基本命令

一、基本命令1.1 关机和重启关机shutdown -h now 立刻关机shutdown -h 5 5分钟后关机poweroff 立刻关机重启shutdown -r now 立刻重启shutdown -r 5 5分钟后重启reboot 立刻重启1.2 帮助命令–help命令shutdown --help:ifconfig --help:查看网卡信息man命令(命令说明书

2021-07-13 20:15:21 73

原创 Linux基础操作

1、操作系统的分类操作系统的定义操作系统(Operating System,简称OS),是电子计算机系统中负责支撑应用程序运行环境以及用户操作环境的系统软件,同时也是计算机系统的核心与基石。操作系统是控制和管理计算机软硬 件资源、合理组织计算机工作流程,以及方便用户操作的程序集合。常见分类:手机:Android、IOS电脑:UNIX、LINUX、MacOS、WindowsUNIXUNIX是一个强大的多用户、多任务操作系统,支持多种处理器架构,按照操作系统的分类,属于分时操作系统。UNIX 最

2021-07-13 20:13:25 52

原创 Fiddler简介

1.Fiddler是位于客户端和服务器端之间的代理,也是目前最常用的抓包工具之一 。它能够记录客户端和服务器之间的所有请求,可以针对特定的请求,分析请求数据、设置断点、调试web应用、修改请求的数据,甚至可以修改服务器返回的数据,功能非常强大,是web调试的利器。功能1、能够监听http/httpS的流量,可以截获从浏览器或者客户端软件向服务器发送的http/https请求;2、对截获之后的请求,我们还能够查看请求中的内容;3、伪造请求。不仅可以伪造客户端的请求,还能够伪造服务器的响应。——该功能能

2021-07-08 19:34:47 86

原创 2021-07-07

1.抓包概念抓包是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也用来检查网络安全等。下面小编就介绍几种抓包软件。2. 什么是CharlesCharles中文名字青花瓷,是一款Http代理服务器和Http监视器,当移动端在无线网连接中按要求设置好代理服务器,使所有对网络的请求都经过Charles客户端来转发时,Charles可以监控这个客户端各个程序所有连接互联网的Http通信。特点:跨平台、半免费免费版本:一是启动等待十秒才能启动,二是半小时重启一次3.Charles工作原理

2021-07-07 20:14:24 33

原创 Postman与jmeter的区别是什么?

用例组织不同,jmeter的组织是比较扁平,首先他没有工作空间的概念,直接就是测试计划,而postman功能上更简单,组织方式是轻量级,他主要针对的是单个的http请求。支持接口的类型与测试的类型不同:jmeter的功能更强大,可以通过各种类型的接口,不支持的也可以通过网上或者自己编写的插件进行扩展,而postman更轻量级,定位不同,可用来测试Rest接口。配置不同:jmeter可以在线程组里添加http,tcp,而postman只支持Rest接口...

2021-07-06 19:57:14 959

原创 测试简述题

1.什么是Http协议,请求方法是什么?Http协议与Https协议的区别?Http协议:又叫超文本传输协议,是定义了一个客户端到服务器请求与应答的标准。请求方法:get、post、head、delete、put、peachHTTPS协议:以安全为目标的HTTP通道,简称Http的安全版。HTTPS与HTTP的区别:A. http协议需要ca申请证书,一般免费证书较少,需要一定费用。B. http的链接简单,是无状态的,而https协议是由SSL+http协议构建的可进行加密传输,身份认证的

2021-07-06 19:56:18 107

原创 缺陷报告的核心要素

八项:缺陷编号、缺陷状态、缺陷标题、重现步骤、严重程度、优先级、缺陷类型、测试环境。1.缺陷编号缺陷的唯一标识符2.缺陷状态缺陷跟踪过程的进展情况新建:刚发现的缺陷已指派:已经由测试人员将缺陷指派给开发人员进行处理已打开:开发人员正在修复缺陷已修复:开发人员完成缺陷修复,还未进行回归测试已拒绝:发开人员拒绝修复已延期:对缺陷进行延缓处理已关闭:由测试人员回归测试后,缺陷不存在了重新打开:由测试人员回归测试后,发现缺陷任然存在,4.缺陷标题缺陷的概述,描述问题本质5.重现步骤①

2021-07-05 21:13:24 1639 1

原创 测试报告简述

1.定义记录测试的过程和结果,对发现的问题和缺陷进行分析的文档2.测试报告分类阶段测试报告整体测试报告3.报告内容1 概要编写目的①对测试报告进行相应的解释②对项目进行简介③对于测试任务进行简单描述,要测试哪些内容测试人员类似于测试计划中的人员分工,简单描述日期等测试环境软件和硬件环境4. 测试过程阶段测试报告:1、测试进度情况2、用例执行情况3、缺陷统计总体测试报告1、各版本的测试情况2、各版本的缺陷统计...

2021-07-05 21:10:23 483

原创 2021-07-01

开发环境与测试环境有什么区别?开发环境:是在编码阶段,一般我们的代码基本上都是在开发环境中,不会再生产与测试环境,如操作系统,web服务器,语言环境,php,数据库等等。测试环境:项目完成后,找Bug,以及修改Bug。写好测试用例的关键 /写好用例要关注的维度?覆盖用户的需求;从用户使用场景出发,考虑用户的各种正常和异常的使用场景;用例的颗粒大小要均匀。通常,一个测试用例对应一个场景;用例各个要素要齐全,步骤应该足够详细,容易被其它测试工程师读懂,并能顺利执行;做好用例评审,及时更新测试.

2021-07-01 18:57:46 88 1

原创 2021-07-01

1.测试人员在测试中的任务是什么?A. 尽早的找出系统当中的BugB. 避免软件开发过程中缺陷的出现C. 确保缺件的质量D. 关注用户的需求,并保证系统符合用户需求2.Bug不能复现怎么办?A. 首先考虑环境问题,看是否能够还原原来的环境B. 遇到问题就要提,不能放过任何一个Bug,在提交的Bug描述中加上一句话,那就是复现概率,尝试20次,出现一次或尝试10次,交给开发,开发会根据Bug的复现概率,调整改Bug的优先级。C. 尽量回想发生问题时的复现步骤,不要漏掉任何一个细节,按照步骤的

2021-07-01 18:56:36 36

原创 2021-07-01

软件测试的目的与原则是什么?定义目录标题)目的:A. 通过测试工作可以发现并修复软件当中存在的缺陷,B. 可以降低同产品开发遇到的风险,C. 记录软件运行过程中的一些数据,从而为决策者提供技术支持。原则:A. 缺陷集群性,2/8定律:核心功能占20%,非核心占80%,我们会集中测试20%的核心功能,发现缺陷的几率会高于80%,因此,遇到的缺陷都会集中20%功能模块里。B. 穷尽测试是不可能的:有些功能是无法将所有测试情况逻辑出来的,任何的测试都有结束的时间。C. 测试需要尽早介入:为了.

2021-07-01 18:53:21 38

原创 Springboot 框架的笔记

1、SpringBoot starter 工作原理1)SpringBoot 在启动时扫描项目依赖的 jar 包,寻找包含 spring.factories 文件的 jar2)根据 spring.factories 配置加载 AutoConfigure3)根据@Conditional 注解的条件,进行自动配置并将 bean 注入到 Spring Context2、什么是 Spring Data?Spring Boot auto-configuration 试图自动配置你已经添加的基于 jar 依赖项

2020-09-21 07:48:29 95

原创 Springboot 的优点是什么?

1、减少开发、测试时间和努力2、使用 JavaConfig 有助于避免使用 XML3、避免大量的 maven 导入和各种版本冲突4、提供意见发展方法5、通过提供默认值快速开始开发6、没有单独的 web 服务器需要,这就意味着不再需要启动 Tomcat、Glassfish 或其他任何 东西7、需要更少的配置,因为没有 web.xml 文件。只需添加用@Configuration 注释的类,然后 添加用@Bean 注释的方法,Spring 将自动加载对象并像以前一样对其进行管理。甚至可以将 @Aut

2020-09-21 07:45:55 1201

原创 什么是 SpringBoot?

1、用来简化 spring 初始搭建和开发过程使用特定的方式进行配置(properties 或者 yml 文 件)2、创建独立的 spring 引用程序 main 方法运行3、嵌入 Tomcat 无需部署 war 包,直接打成 jar 包 nohup java -jar – & 启动就好4、简化了 maven 的配置5、自动配置 spring 添加对应的 starter 自动化配置...

2020-09-21 07:43:35 83

原创 MyBatis 与 Hibernate 有哪些不同?

(1)Mybatis 和 hibernate 不同,它不完全是一个 ORM 框架,因为 MyBatis 需 要程序员自己编写 Sql 语句。(2)Mybatis 直接编写原生态 sql,可以严格控制 sql 执行性能,灵活度高,非常 适合对关系数据模型要求不高的软件开发,因为这类软件需求变化频繁,一但需求变化要求 迅速输出成果。但是灵活的前提是 mybatis 无法做到数据库无关性,如果需要实现支持多 种数据库的软件,则需要自定义多套 sql 映射文件,工作量大。(3)Hibernate 对象/关系映射

2020-09-21 07:40:12 63

原创 Mybatis 框架笔记

1、MyBatis 框架的缺点:(1)SQL 语句的编写工作量较大,尤其当字段多、关联表多时,对开发人员编写 SQL 语句的功底有一定要求。(2)SQL 语句依赖于数据库,导致数据库移植性差,不能随意更换数据库。2、MyBatis 框架适用场合:(1)MyBatis 专注于 SQL 本身,是一个足够灵活的 DAO 层解决方案。(2)对性能的要求很高,或者需求变化较多的项目,如互联网项目,MyBatis 将 是不错的选择。3、#{}和KaTeX parse error: Expected 'EOF

2020-09-21 07:39:31 70

原创 Mybaits 的优点

(1)基于 SQL 语句编程,相当灵活,不会对应用程序或者数据库的现有设计造成 任何影响,SQL 写在 XML 里,解除 sql 与程序代码的耦合,便于统一管理;提供 XML 标 签,支持编写动态 SQL 语句,并可重用。(2)与 JDBC 相比,减少了 50%以上的代码量,消除了 JDBC 大量冗余的代码, 不需要手动开关连接;(3)很好的与各种数据库兼容(因为 MyBatis 使用 JDBC 来连接数据库,所以只 要 JDBC 支持的数据库 MyBatis 都支持)。(4)能够与 Spring 很

2020-09-21 07:35:05 100

原创 什么是 Mybatis?

(1)Mybatis 是一个半 ORM(对象关系映射)框架,它内部封装了 JDBC,开发 时只需要关注 SQL 语句本身,不需要花费精力去处理加载驱动、创建连接、创建 statement 等繁杂的过程。程序员直接编写原生态 sql,可以严格控制 sql 执行性能,灵活度高。(2)MyBatis 可以使用 XML 或注解来配置和映射原生信息,将 POJO 映射成数 据库中的记录,避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。(3)通过 xml 文件或注解的方式将要执行的各种 stateme

2020-09-21 07:34:05 63

原创 SpringMVC 框架笔记

1、什么是 Spring MVC ?简单介绍下你对 springMVC 的理解?Spring MVC 是一个基于 Java 的实现了 MVC 设计模式的请求驱动类型的轻量级 Web框架,通过把 Model,View,Controller 分离,将 web 层进行职责解耦,把复杂的 web 应用分成逻辑清晰的几部分,简化开发,减少出错,方便组内开发人员之间的配合。2、SpringMVC 的流程?(1)用户发送请求至前端控制器 DispatcherServlet;(2) DispatcherServle

2020-09-21 07:32:43 104

原创 Spring 框架

Spring 是什么?Spring 是一个轻量级的 IoC 和 AOP 容器框架。是为 Java 应用程序提供基础 性服务的一套框架,目的是用于简化企业应用程序的开发,它使得开发者只需要关心业务需 求。2.Spring 的优点?(1)spring 属于低侵入式设计,代码的污染极低;(2)spring 的 DI 机制将对象之间的依赖关系交由框架处理,减低组件的耦合性;(3)Spring 提供了 AOP 技术,支持将一些通用任务,如安全、事务、日志、权 限等进行集中式管理,从而提供更好的复用。(4.

2020-09-21 07:25:21 137

原创 关于Elasticsearch的十道面试题

Elasticsearch是什么?跟mysql的区别java开发的基于lucene分布式全文搜索引擎,基于restful Web接口,在检索领域相当优秀。ElasticSearch是一个分布式搜索引擎mysql为关系型数据库是当下Web应用开发中最流行的关系型数据库Elasticsearch中的类型都是什么?基本数据类型:long、integer、short、byte、double、float、half_float浮点数的高精度类型:scaled_floatDate:日期类型El..

2020-09-21 07:17:35 239

空空如也

空空如也

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

TA关注的人

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