自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 CSS样式

CSS通常称CSS样式表或层叠样式表,主要用于设置HTML文本内容(字体、大小、对齐方式等),图片的外形(宽高、边框样式、边距等)以及版面的布局外观显示样式CSS以HTML为基础,提供了丰富的功能,如字体、颜色、背景的控制及整体排版等,而且还可以针对不同的浏览器设置不同的样式s一.CSS基本语法1.1书写位置:head标签内部1.2环境:<style type =''text/css''> <style/>1.3书写css属性:控制的对象{css键值对}三.C

2022-03-05 10:04:54 164

原创 html用法

一.html是一个描述网页的超文本标记语言,html语法规定有:1.标签标记符号-------<>又称尖括号;2.html语言必须写在标签符号里面3.html的标签大多数都是成对出现的4.关闭符号-------- / 又称反斜杠二.HTML的基本结构通过Hbuilder创建一个HTML文档注解:1.<!DOCIYPE html>描述当前文本的版本信息,如果没有详细说明4.0还是x1.0那就说明使用的是html5.0版本2.<html&gt

2022-03-04 22:55:08 1067

原创 字符串驻留机制

Python的字符串驻留机制 - 简书参考链接

2022-02-28 17:25:30 153

原创 字符串格式化问题

参考文章字符串的格式化问题_openlab网工之路-CSDN博客

2022-02-28 16:51:59 116

原创 requests库

requests用来发送http请求以及接收http响应的python第三方库,主要用于接口自动化测试pip install request

2022-02-15 12:15:22 1877

原创 基于pytest实现的POM模式

一.基类from selenium import webdriver#这是POM下的基类,用于管理所有的工具函数class BagePage:#构造函数def __init__(self,driver): self.driver = driver#访问URLdef open(self,url): self.driver.get(url)#元素定位def locator(self,loc): return self.driver.find_element(

2022-01-20 14:36:40 1017

原创 pytest测试框架的使用

单元测试:是指对软件代码中最小单元的测试,比如函数,模块,是一种白盒测试单元测试框架:单元测试框架是一种模板、规范,能够有条理地组织我们的自动化测试用例代码,提供断言,能指定测试用例的执行顺序,将特定的测试用例集合在一起去执行,也能生成测试报告.unittest和pytest是常见的单元测试框架。单元测试框架和自动化测试框架的区别:关键字驱动,数据驱动,单元测试框架是自动化框架的组成部分一.pytest的特点简单灵活,容易上手,文档丰富 支持参数化,可以细粒度地控制要测试的测试用例 能支

2022-01-17 20:19:57 831 1

原创 selenium运行原理

一.我们使用Selenium实现自动化测试,主要需要3个东西1.测试脚本,可以是python,java编写的脚本程序(也可以叫做client端)2.浏览器驱动, 这个驱动是根据不同的浏览器开发的,不同的浏览器使用不同的webdriver驱动程序且需要对应相应的浏览器版本,比如:geckodriver.exe(chrome)3.浏览器,目前selenium支持市面上大多数浏览器,如:火狐,谷歌,IE等二.selenium4环境部署1.安装python3.7以上版本2.pip insta

2022-01-17 09:38:31 670

原创 结合Excel进行数据驱动

数据驱动模块:在测试过程中,将测试数据独立化进行保存与管理,基于管理的数据文件进行测试的驱动),而EXCEL经常作为我们的数据管理文件管理我们的测试用例Openpyxl是一个用于读写Excel 2010 xlsx/xlsm/xltx/xltm文件的Python库,其功能非常强大,一.逻辑代码层#读取Excel测试用例的数据内容,并用于自动化测试的运行#获取sheet页内容import openpyxlfrom web_keys.keys_plus import Key #导入w

2022-01-16 21:32:10 762

原创 关键字驱动

1.关键字驱动和POM模式是企业经常用到的两种设计模式,采用合适的设计模式可以减少代码的冗余,方便后期的维护和管理。2.关键字驱动可以应用在UI自动化,接口自动化3.将常用的selenium操作行为进行封装,通过调用自定义函数来实现自动化,是一种常见的关键字驱动。也可以将一个系统中应用频繁的业务流程进行二次封装,比如很多功能都要先登录才能使用,此时登录时最常用的功能,可以将它封装起来。4.框架设计原则:1.代码与数据分离 2.逻辑代码(二次封装代码)与测试代码分离关键字驱动体系下

2022-01-16 20:45:48 3071

原创 基于unnitest实现的POM设计模式

目录一.基类二.页面对象类三.数据层四.测试用例层PageObjectModule,页面对象模型,简称POM或者PO,是目前业内内公认的最佳的设计模式。POM的结构有四层:(1)基类:基于关键字驱动对一些常用的操作进行封装,减少代码的冗余程度(2)页面对象类:所有的页面对象保存在该层中(页面核心元素,页面URL,页面业务流)(3)测试用例类:测试用例层,该层经常用unittest或者pytest框架,进行参数化,断言,生成测试报告等(4)测试数据类:测试过程中用到的数

2022-01-15 22:18:46 438

原创 unittest结合DDT和yaml文件实现数字驱动

unittest测试框架除了可以和parameterized模块实现参数化以外,还可以还DDT实现数据驱动。ddt是python的第三库,全名称为:Data-Driven/Decorated Tests一.DDT(1)安装命令如下pip install ddt (2)使用示范import unittestfrom time import sleepfrom ddt import ddt,data,unpackfrom seleni...

2022-01-15 14:17:28 586 1

原创 unittest框架用法

一.unittest的四大组件1.TestCase:测试用例,通过继承unittest.TestCase,来实现用例的继承,在Unittest中,测试用例都是通过test来识别的。2.TestSuite:用来组装测试用例 - addTest一个功能的验证往往需要多个测试用例3.TestRunner:运行器,通过TextTestRunner类提供的run()方法来执行test suite/test case,一般通过runner来调试unittest.main()运行所有内容。

2022-01-15 13:07:25 1165

原创 Http.Client库的用法

Http.Client库是python的内置库,主要用于对http请求进行处理(一)Http.Client实现GET请求import http.clientfrom http.client import HTTPConnectionfrom http.client import HTTPResponse#建立与服务端的连接conn = HTTPConnection(http://baidu.com',80)#发送请求,URL地址不带HOST信息conn.request('GET',

2022-01-08 22:11:16 4914 1

原创 http协议

目录一.web交互二.HTTP协议三.HTTP请求(1)GET请求(2)POST请求一.web交互web系统主要由服务器端和浏览器端组成,服务器端负责处理请求并返回响应,浏览器提供交互界面并将用户的请求发送给服务器端。总之,服务器端与浏览器之间的交互由请求与响应组成,使用标准的http协议来进行请求的发送和响应接收,换句话说,HTTP协议是一系列规则,规定了请求和响应应该包含什么(行,头,体)。当浏览器发出请求后,如果请求的是一个静态HTML页面,则服务器直接把该静态资源

2022-01-08 21:34:21 1057

原创 python高阶之闭包函数和装饰器

一.闭包函数闭包函数:外函数中声明了一个内函数,在内函数中引用了外函数的变量,外函数返回内函数的引用import requests#普通函数实现def get_page(url): r= requests.get(url) print(r.encoding) #获取响应页面采用的编码方式 get_page("http://baidu.com") #结果返回utf8#闭包函数实现def outter(url): #外函数 def inner(): #内函数

2022-01-08 14:27:32 388

原创 Python高阶之套接字socket

套接字:应用程序通常通过”套接字”向网络发出请求或者应答网络请求,使主机间或者一台计算机上的进程间可以通讯,是一种进行数据传输的一种技术手段,工作在传输层和应用层之间,通过TCP或者UDP协议传输信息,分为客户端和服务端模块:socket使用步骤:(1)服务端1.创建socket对象:soc = socket.socket()2.绑定ip和端口:soc.bind(ip,port)3.设置监听:soc.listen()4.等待客户端连接:soc.accept()import

2022-01-06 22:32:46 849

原创 python高阶之线程锁

一.引言多线程是可以共享全局变量的,意味着多个线程可以同时操作一个全局变量,这很容易导致数据错误。import threadingn = 0def f(): global n $#函数内想使用全局变量要用global声明 for i in range(1000000): n += 1 n -=1 print(n)if __name__="__main__": th1 = threading.Thread(target = f

2022-01-06 21:47:27 286

原创 python高阶之多线程

目录一.线程二.线程守护三.线程阻塞一.线程线程:进程内部进行CPU调度的基本单位,一个进程中至少存在一个线程●模块:threading●创建线程: Thread(target= func [args= (value1 ,value2,......)])●target,指定线程需要执行的任务(通常是函数名或者方法名,不要加括号)●args,指定线程执行的任务需要传入的实参,以元组形式传入●启动线程:start( )import threadingimpo.

2022-01-06 19:08:29 118

原创 Python高阶之正则表达式的用法

模块:re (系统模块)方法:(1)split(pattern,string),使用字符串中与pattern规则匹配的内容进行分隔,返回一个列表pattern:正则表达string: 待处理的字符串示范代码:import res = "fgh567asd9omn" r=re.split('\d+',s) #使用至少1个数字分隔,将字符串转换为列表 ["fgh","asd","mn"Jprint(r)(2)sub(pattern,repl,string),将字.

2022-01-06 17:55:40 392

原创 flask模块mock接口(二)

一.获取请求传入数据(1)模块:from flask import request(2)方法method,获取客户端提交请求的方法header获取请求头cookies,获取cookieargs,获取GET请求提交的数据form,获取POST请求提交的数据vaLues,获取POST或者GET请求提交的数据例1:获取GET请求数据...

2022-01-06 13:04:05 618

原创 flask模块mock接口(一)

有时候测试需要调用第三方接口进行测试,但是第三方接口没有提供时,我们可以通过mock接口模拟第三方接口。一.安装第三方模块通过pip install flask安装(flask是一个轻量级的web开发框架)二.flask模块的使用...

2022-01-05 12:15:21 1012 1

原创 jenkins持续集成

一.持续集成环节开发流程:1.写代码,用git、svn等版本控制管理工具完成各个开发代码的整合。2.代码变成可执行程序,用编译打包工具maven和gradle使代码编译打包成war包。测试:1.测试环境部署(手动示范)a.连接xshell,远程操作Linux系统b.切换到tomcat的webapp目录下c.把war包从window桌面上拖到xshelll里,war包就会自动出现在xshell的当前目录下d.重启tomcate.如部署不成功可以查看.

2022-01-04 19:30:01 305

原创 python+ride+requests框架实现接口测试

一.robotframework和ride的搭建参考python+ride+selenium框架_a_6701998890的博客-CSDN博客二.robotframework-requests库的下载1、使用pip install robotframework-requests命令完成RequestsLibrary库2、打开RIDE,在测试套件的Edit页面,点击【Library】3、在Name中输入RequestsLibrary,点击【确认】4、在列表中就可以看到增加完成了,如果显

2021-12-31 14:18:29 1279

原创 自动化之滑块验证码的处理

一、验证码的作用很多注册登录页面都会采用验证码来防止恶意登录和注册,通过每次刷新后返回不同的验证码,可以排除用其他病毒或者软件自动申请注册或者登录的操作,还可以在一定程度上减少网站的并发量。二、自动化测试处理验证码的几种方式1.去掉验证码即让开发人员直接注释掉验证码相关的代码即可2.设置万能码让开发在程序中声明一个只提供给自动化测试人员的万能验证码,用户无法获取。这样,程序就可以使用万能验证码通过验证,从而完成自动化操作。3.只保留一个图片资源如果验证码是图片的形式,实际就是

2021-12-31 11:01:09 1756

原创 python+ride+selenium框架实现web测试

一.robotframework介绍robotframework是一个基于关键字驱动的框架,它可以和selenium、appipum和request库结合生成web自动化脚本、app自动化脚本和接口自动化脚本,也可以和Jenkins持续集成;它具有非常强大的扩展性,我们可以自己自定义库扩展我们想要的功能。ride是rf框架的IDE,图形界面,使用起来比较方便,用例管理与执行都不错二.robotframwork和ride安装...

2021-12-25 16:29:41 897

空空如也

空空如也

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

TA关注的人

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