- 博客(137)
- 资源 (4)
- 收藏
- 关注
原创 构造百万测试数据的方法
使用接口测试工具postman的csv或者jmeter,批量读取数据发送接口请求,实现数据的构造;步骤2:打开连接上mysql数据库的navicat,右键数据库的表,选择导入向导 -》选择excel文件类型进行导入。步骤1:准备一个excel表格,按照数据库的表的字段填入一行数据,然后在excel表格进行下拉实现数据的快速复制。***:**这种方法可以构造千条数量级的数据,但是如果数据量更大,就也不太方便。在测试的工作过程中,很多场景是需要构造一些数据在项目里的,方便测试工作进行。
2024-02-29 17:03:42 400
原创 python + ddt数据驱动 之 @data(字典)
@data({‘username’: ‘13200008888’, ‘password’: ‘asmin123’}, {‘username’: ‘qazxsw’, ‘password’: ‘2345678’}) 对于字典,除了需要使用@unpack解析成多个参数外,而且@data字典中的key还必须与函数中的形参一致,否则会报错...
2024-01-15 16:03:43 1258
原创 python + ddt数据驱动 之 多个参数
案例:打开https://www.csdn.net/,进行登录,查看结果不使用ddt数据驱动:import unittestfrom selenium import webdriverimport timeclass CSDNTestCase(unittest.TestCase): def setUp(self): # 打开chrome浏览器 self.driver = webdriver.Chrome() # 设置隐式等待10秒
2024-01-15 16:02:20 937
原创 python + ddt数据驱动 之 一个参数
案例:打开百度,进行搜索,查看搜索结果;执行3条测试用例,分别搜索python,自动化测试,ddt data不使用ddt数据驱动:import unittestimport timefrom selenium import webdriverclass Baidu(unittest.TestCase): def setUp(self): # 打开chrome浏览器 self.driver = webdriver.Chrome() # 设置
2024-01-15 16:00:20 812
原创 requests介绍与安装
requests介绍:requests是一个python的库,通过简单的api实现python对http请求的操作,多用于爬虫或者接口测试。requests库是用python编写的,基于urllib库做的二次封装,采用apache2 licensed开源协议的http库;相比urllib库,requests库更加方便,可以节约我们大量的工作,完全满足http测试需求。requests支持http连接保持(keep-alive)和连接池,支持使用cookie保持会话,支持文件上传,支持自动确定响应内容的
2024-01-14 17:15:01 946
原创 selenium之By定位
导入By类导包:from selenium.webdriver.common.by import ByBy类的方法:1.find_element(By.ID, ‘userA’)2.需要两个参数,第一个参数为定位的类型,由By提供,第二个参数为定位的具体方式。from selenium import webdriverfrom selenium.webdriver.common.by import Byfrom time import sleep# 打开chrome浏览器driver =
2024-01-14 17:14:55 1024
原创 selenium之元素常用属性
webElement常用属性与方法定位到元素后,除了对元素进行操作,还可以获取元素的一些属性信息。常见的属性信息:1、获取元素的尺寸:ele.size2、获取元素的坐标:ele.location3、获取元素的文本内容:ele.text text是存在在一对a标签、p标签或div标签中的文本内容,如果是标签中的value值,是不能通过这种方式来获取到的。4、获取元素的属性值:ele.get_attribute(属性名) 通过传入不同的属性名来获取对应的属性值5、获取页面的url:driver.cu
2024-01-14 17:14:48 1318
原创 python+selenium实现12306模拟火车票的查询及预订
python+selenium实现12306模拟火车票的查询及预订:线性代码实现流程,完整代码如下:# coding = utf-8from datetime import date, timedeltafrom selenium import webdriverfrom selenium.webdriver.common.by import Byfrom time import sleep# 以下为定义函数部分,其目的是返回今天后的第n天后的日期,格式为“2022-03-28”def
2024-01-14 17:14:40 1677
原创 selenium 重构-----代码分层优化
通过对上一篇文章中脚本的观察发现,上面的代码将函数和其他测试代码放在同一个文件中。随着自动化测试的深入,测试的内容和范围会逐步增加,这样的编码方式,不利于提高代码的可扩展性和可维护性。上一篇文章:对selenium中元素定位方法进行重构再封装为了更好的理解代码分层的理念,将根据同样的项目逐步进行深入挖掘和优化。如图所示为初步分层后的代码结构图。其中booking_tickets.py为测试代码文件;文件functions.py主要存放常用的基础方法等。其中,基础常用方法代码如下:# coding
2024-01-13 12:32:01 842
原创 python + selenium 初步实现数据驱动
如果在进行自动化测试的时候将测试数据写在代码中,若测试数据有变,不利于数据的修改和维护。但可以尝试通过将测试数据放到excel文档中来实现测试数据的管理。示例:本次涉及的项目使用的12306 selenium 重构------三层架构excel文件数据如图所示:整体项目代码结构如图所示:function.py 代码如下(基础代码):# coding = utf-8'''基础常用方法'''from datetime import date,timedeltafrom selenium
2024-01-13 12:31:54 971
原创 行为驱动测试 python + behave
行为驱动,Behave-Driven Development,简称BDD。在行为驱动中运用结构化的自然语言描述场景测试,然后将这些结构化的自然语言转化为可执行的测试脚本或者其他形式。BDD的一种优势是,它建立了一种通用语言,而这种语言可以同时被客户和开发者拿来使用,因此建立在同一种语言知乎的沟通就会避免很多不一致的问题。BDD的环境:安装模块behave,pip install behave。BDD一些关键字的解释:(1)Feature,可简单描述此场景是什么,如登录。(2)Given,表示‘假设’
2024-01-13 12:31:47 801
原创 html + css 实现奥运五环 并一直在页面居中
实现效果图:html代码:<!DOCTYPE html><html><head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>奥运五环</title> <link rel="stylesheet" type="text/css" href="奥运五环
2024-01-13 12:31:39 595
原创 javascript编程求三个数中最大的数
使用javascript编程求输入的三个数中最大数,并在页面打印出来<!DOCTYPE html><html><head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>求三个数中最大的数</title></head><body> &
2024-01-13 12:31:31 824
原创 javascript 实现斐波那契数列
斐波那契数列 1 1 2 3 5 8 13…<!DOCTYPE html><html><head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>循环语句</title></head><body> <script type="t
2024-01-13 12:31:24 504
原创 python 操作 MySQL 数据库的流程
用python 操作 MySQL 数据库的流程:1、创建数据库连接:即和数据库建立连接。这样后续的操作才能被传递到数据库服务器中。创建数据库连接就是建立一个通道。2、创建游标:即将收影响的数据暂时存放到一个内存区域的虚表中,而这个虚表就是游标。为什么要建立游标呢?目的是为了回滚。此时将对数据库的操作暂时存放在游标中,只有不提交,就可以兑游标中的内容进行回滚。3、在游标下执行SQL语句:此时会将执行结果存放在游标中。4、提交游标数据到数据库:这一步才是真正把游标中的数据更新到数据库中,如果缺少这一步,那么即使
2024-01-12 16:08:20 1245
原创 python 异常处理 try...except...finally..
python 异常处理:简单的异常处理主要依靠内置异常处理结构体,代码结构如下:try:…except ValueError as e: # 异常判断,出现ValueError错误时处理机制…except ZeroDivisionError as e: # 异常判断,出现ZeroDivisionError错误时处理机制…finally:…示例:示例运行结果:...
2024-01-12 16:08:13 560
原创 Docker简介
Docker是基于Go语言实现的一个云开源项目,托管在GitHub中,任何人都可以参与。Docker的作用是提供了一个轻量级的操作系统虚拟化解决方案。Docker是一个开源的引擎,可以创建轻量化、可移植的容器。(2)容器类似一个轻量级的沙箱,通过镜像创建应用运行实例,这些容器可以在Docker中实现被启动、开始、停止和删除,并且这些容器是相互隔离的,互不可见的。(3)仓库有些类似代码仓库,是Docker集中存放镜像文件的场所。(1)镜像类似之前虚拟机的镜像,也类似通常所讲的安装文件。(1)项目打包部署。..
2024-01-12 16:08:05 436
原创 Docker容器技术
运用Docker技术可以让selenium更好地实现分布式测试。在实际的自动化测试项目中,测试环境可能有很多种类,比如某个web项目就需要在 Windows+IE 测试环境中进行,也可能需要在 Windows+Chrome 测试环境中进行等。全部按照传统的方式去部署管理测试环境,会出现效率不高的问题。通过Docker可以简化Selenium Grid分布式测试环境的部署。Docker容器技术。...
2024-01-12 16:07:58 380
原创 python 多线程 简介
简单来说,单线程在执行任务时是有一定的顺序的。而随着科技的进步,CPU等计算机组件的升级换代日新月异,CPU处理速度越来越快,可以并行处理多个任务,可以这样简单地理解多线程的工作模式。在python中,多线程相关的模块主要有Thread、Threading、Queue。Threading模块对Thread模块进行了封装,实现了线程的一些操作对象化。用此方式实现多线程是比较简洁的,也是比较推荐的。多线程的类采用直接继承threading.Thread的方式来继承得到相应的方法和属性。python多线程简介。.
2024-01-12 16:07:50 466
原创 python:for循环 实现FizzBuzz
要求:输入一个数字,程序遍历从1到输入的数字之间的所有数字,如果该数能被3整除,打印Fizz;如果该数能被5整除,打印Buzz;如果能同时被3和5整除,打印FizzBuzz,其它情况打印原数字。python:for循环 实现FizzBuzz。...
2024-01-12 16:07:42 494
原创 unittest Module中常用的断言方法
assertNotIn(item, list):判断item不在list中。assertIn(item, list):判断item在list中;assertNotEqual(a, b):判断a!assertEqual(a, b):判断a == b;assertFalse(x):判断x为False;assertTrue(x):判断x为True;
2024-01-12 16:07:28 385
原创 jmeter 函数助手 _FileToString 简介
如图所示从F:\jmeter\testvalue.txt读取文件内容,存入firstV变量中,在Java请求中参数化Label,引用方式:${__FileToString(F:\jmeter\testvalue.txt,uft-8,firstV)};然后引用firstV这个变量。_FileToString:用来读取文件,它可以一次性读取文件内容,然后保存到变量;此变量之后可以由其他Sampler引用。
2024-01-12 10:46:41 540
原创 使用JMeter发送FTP请求
作为一个应用程序不同的操作系统也有不同的实现,为了保证可以跨平台,FTP程序都要遵循相同协议,FTP有上传与下载两种功能。JMeter提供对FTP上传与下载的测试支持,与FTP请求默认值设置基本一样,只是多了用户名与密码。:文件内容是否保存到响应中去,如果选择,且运行FTP请求成功后我们可以在察看结构树-响应数据中看到内容。:是否已二进制方式传输。远程文件(Remote File):远程FTP服务器文件路径。本地文件(LocalFile):保存在本地的文件路径。名称:控制器名称,可以随意设置,也可以为空。
2024-01-12 10:46:34 854
原创 javascript实现点击主题按钮切换主题
JS实现点击按钮切换主题;javascript点击事件,div.onclick;给元素绑定点击事件,div.onclick = function(){}document.getElementsByTagName(标签名)
2024-01-12 10:46:23 376
原创 javascript实现下雪效果
function getRandom(x, y) { return Math.random() * (y-x) + x;}img.style.position = 'absolute';img.style.left = getRandom(0, window.innerWidth) + 'px';img.style.top = getRandom(0, window.innerHeight) + 'px';document.body.appendChild(img);
2024-01-12 10:46:12 449
原创 JavaScript实现满天星
function getRandom(x, y) { return Math.random() * (y -x ) + x; }div.style.fontSize = getRandom(20, 30) + 'px';document.body.appendChild(div);
2024-01-12 10:46:00 364
原创 python实现md5加密
python实现md5加密hashlib.md5().update(要加密的值.encode('utf-8')).hexdigest()运行结果:e10adc3949ba59abbe56e057f20f883e。
2024-01-12 10:45:46 642
原创 python + urllib 获取百度首页html
python + urllib 获取百度首页html。urllib库是python自带的库,不需要安装。
2024-01-11 16:17:40 611
原创 python + urllib + BeautifulSoup 获取百度首页logo
python + urllib + BeautifulSoup 获取百度首页logo1、urllib库是python自带的库,不需要安装。2、BeautifulSoup是第三方库,安装方法: pip install bs4
2024-01-11 16:14:03 661
原创 python 利用多线程执行selenium(自动化)测试
在实际应用中,可能会遇到项目要求既要在Chrome浏览器中测试,又需要在Firefox浏览器中进行测试,那么此时就能体现出多线程测试的优势。多线程并行地运行自动化测试,提高了效率。示例:在本地利用chrome浏览器和firefox浏览器对同一脚本进行并发操作。base_unit.py : UnitTest管理并执行测试脚本。python 利用多线程执行selenium测试。basic_unit.py : 测试用例。test_run.py : 多线程测试类。...
2024-01-11 16:02:23 1106
原创 做自动化接口测试时python处理cookies技巧(接口关联)
做接口测试时,遇到需要登录后才能继续操作时,需要做接口关联。s = requests.session()
2024-01-11 16:01:38 837
原创 python + urllib + BeautifulSoup 获取百度首页标题
python + urllib + BeautifulSoup 获取百度首页标题1、urllib库是python自带的库,不需要安装。2、BeautifulSoup是第三方库,安装方法: pip install bs4
2024-01-11 16:01:01 661
原创 django框架初体验 --- 返回动态页面
4、在命令行中输入:python manage.py runserver ,在浏览器中访问生成的地址:http://127.0.0.1:8000/music/django框架初体验 — 返回动态页面。
2023-01-17 21:35:31 266 1
原创 django框架初体验 --- 返回静态页面
4、在命令行中输入:python manage.py runserver ,在浏览器中访问生成的地址:http://127.0.0.1:8000/tv/django框架初体验 — 返回静态页面。
2023-01-17 21:13:52 304
原创 django框架初体验 --- 在web页面中返回文本
在命令行中输入:python manage.py runserver ,在浏览器中访问生成的地址。django框架初体验 — 在web页面中返回文本hello django。
2023-01-17 21:05:50 411
python写入txt文件
2022-07-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人