自定义博客皮肤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)
  • 问答 (1)
  • 收藏
  • 关注

原创 jmeter连接JDBC及用法(二)

1、JDBC Request1)Variable Name-数据库连接池的变量名2)Query Type-查询方式,可选择select、update等多种sql查询方式3)Query-具体的sql语句,写入一个sql语句,暂不支持多个语句查询,后面不需要加分号;若需要写入多个sql语句,在数据库配置页面的URL后加“?allowMultiQueries=true”,并在JDBC Request的Query Type中选择Calleble Statement,每条语句后面用分号隔开4.

2022-01-08 19:55:01 2488

原创 jmeter连接JDBC及用法(一)

1、连接JDBC-通过JDBC Connection ConfigurationVariable Name For created Pool:数据库连接池的变量名,之后JDBC request可以通过选择不同的连接池名来选择不同的数据库连接。变量名不能重名。Connection Pool Configuration:JDBC连接池配置,一般使用默认值即可。1) Max Number of Connections:数据池允许的最大连接数,一般使用默认值02) Max Wait (m...

2022-01-05 23:14:19 956

原创 pytest(五)参数化

pytest参数化的实现,使用装饰器来实现@pytest.mark.parameterize(argnames,argvalues)argnames表示参数名称,是一串字符,多个桉树之间由都好隔开"username,password"argvalues表示参数化的数据,用元组来表示,[("13825110000‘,”123456“),(13900000000”,“111111”)]argname的参数个数要遇argvalue里面的测试数据个数要相同,否则会报错...

2021-08-24 11:00:41 237

原创 pytest(四)插件之报告、排序、重试、跳过

一、测试报告安装pytest测试报告插件1.在线安装 pip install pytest-html2.离线安装 下载对应的离线安装包,解压后进入对应目录,执行python setup.py install3.pycharm安装flie-setting-project-project interpreter-add:pytest-html install使用在pytest配置文件中配置报告文件地址...

2021-08-13 11:08:29 533

原创 pytest(三)配置文件

一、配置文件1. pytest配置文件主要用于定位测试文件及测试类和方法,更便捷的执行测试;配置文件只允许使用以下三个文件名称:pytest.initox.inisetup.cfg2. 配置文件内容[pytest]------------------------------表示该文件为pytest的配置文件addopts = -s -v---------------------执行用例的参数testpaths = ./scripts--------------执行用例..

2021-08-11 11:58:54 383

原创 pytest(二)fixture实现

pytest方法级别的fixture是针对每个测试方法在执行方法前执行fixture初始化的操作,在执行完测试方法后执行fixture销毁的操作初始化的操作方法: def_setup():销毁操作的方法: teardown(self):在每执行一个用例前和执行后的操作放在fixture中可以提高工作效率import timedef add(a,b): return a + b# 定义一个pytest类class Test_add: # 添加类...

2021-08-11 10:17:32 306

原创 pytest(一)框架的使用

一、pytest特点 1.入门简单,文档丰富 2.支持部分单元测试,和复杂的功能测试 3.支持参数化 4.执行测试用例过程中支持跳过操作 5.pytest支持重复执行失败的case,unittest不支持 6.支持运行由nose、unittest编写的测试用例 7.支持很多第三方插件 8.方便与持续集成工具集成,方便测试报告查看二、pytest的安装,安装前关掉代理软件 1.在线安装 pip install pytest...

2021-08-10 17:36:30 269

原创 软件测试报告

目录一、 概述.. 31. 项目背景.. 32. 测试目标.. 33. 测试对象.. 34. 测试范围.. 35. 测试方法.. 46. 测试结束准则.. 4二、 测试过程.. 51. 测试用例.. 52. 测试过程.. 63. 测试时间.. 6三、 测试结论.. 71. Bug概述.. 72. 遗留bug. 8...

2021-08-10 09:07:19 7259

原创 软件测试计划

XXX项目测试计划 目录一、 引言.. 31. 项目概述.. 32. 参考资料.. 3二、 测试内容.. 31. 测试对象.. 32. 测试目的.. 43. 测试范围.. 4三、 测试策略.. 51. 测试方法.. 52. 测试过程.. 63. 严重等级划分标准.. 64. 测试用例优先级定义.. 7...

2021-08-10 08:56:17 615

原创 selenium(十)获取随机手机号码

注册页面重复执行1.定义随机手机号码函数2.备份数据库,每次执行完代码后恢复数据库3.通过修改数据库数据来清除数据import randomimport timefrom selenium import webdriverdriver = webdriver.Chrome()driver.maximize_window()driver.implicitly_wait(10)# 访问网站并打开多个窗口driver.get("https://passport.baidu.co.

2021-07-31 11:27:50 371

原创 selenium(九)cookie的处理

cookie的工作流程1.http请求从客户端访问服务端请求时,服务器会验证客户端的用户信息2.web 服务器认证用户信息通过后会生成cookie,并返回给客户端,客户端收到cookie后会保存cookie到浏览器中3.客户端再次请求http时会带上保存的cookie,一起发送给服务器4.服务器收到请求后根据cookie判断用户状态,并返回相应信息给客户端cookie是由服务器生成的,保存在用户浏览器上的文本文件,其中包含用户相关信息cookie数据格式:键值对组成(python.

2021-07-31 10:17:23 461

原创 selenium(八)窗口切换及截图

1.多窗口切换selenium中封装了获取当前窗口句柄,获取所有窗口句柄和切换到指定句柄窗口的方法:句柄:handle 是操作系统随机生成的随机字符串方法: driver.current_window_handle 获取当前窗口句柄 driver.window_handles 获取所有窗口句柄,该方法的返回值类型为列表形式 driver.switch_to.window(handle) 切换指定句柄窗口import tim.

2021-07-30 10:09:24 382

原创 selenium(七)webdriver下拉框、弹出框和滚动条操作

1.下拉框选择 导入Select类 实例化select对象 select = Select(element) element必须为<select>标签对应的元素 代码实现 select_by_index(index)------------根据option索引定位,从0开始 select_by_value(value)------------根据option属性的值来定位 select_by_visible_tex.

2021-07-28 14:36:42 1285

原创 selenium(六)元素等待的3种方式

元素等待,等待元素加载,共3种方式1.隐式等待要等待整个页面加载完成,再进行元素定位,若找到元素会返回元素,若在指定时间内未找到元素,则每隔0.5s再次查找,如果最终没有找到元素,则抛出异常NoSuchElementException方法:driver.implicitly_wait(timeout) timeout为等待最大时长,单位是秒隐式等待只需要设置一次,会对所有元素生效import timefrom selenium import webdriverfr.

2021-07-22 15:43:26 1775

原创 selenium(五)键盘输入操作

模拟键盘操作导入包:from selenium.webdriver.common.keys import Keys常用的键盘操作:1.send_keys(Keys.BACK_SPACE)------删除键2.send_keys(Keys.SPACE)--------空格键3.send_keys(Keys.TAB)------tab键4.send_keys(Keys.ESCAPE)-------回退esc键5.send_keys(Keys.ENTER)--------回车键6.se.

2021-07-21 18:02:12 7061

原创 selenium(四)鼠标操作

selenium 提供的鼠标操作的方法首先导入相关包:from selenium.webdriver import ActionChains需要先实例化鼠标对象:action = ActionChains(driver)操作方法:1.context_click(element)------右键2.double_click(element)-------双击3.drag_and_drop(source,target)-------鼠标拖动source,target都是元素4.m.

2021-07-21 15:53:29 490

原创 selenium(三)获取元素信息的方法

获取元素信息的目的是用来做断言,判断自动化用例的最终执行结果1.size 返回元素大小2.text 返回元素文本3.get_attribute("") 获取元素属性值,参数为元素的属性名4.is_displayed() 判断元素是否显示5.is_enabled() 判断元素是否可用6.is_selected() 判断元素是否被选中import timefrom selenium import webdriver"""获取网站第一个超链...

2021-07-20 16:30:31 616

原创 selenium(二)元素及浏览器操作

1.点击操作click()2.输入send_keys()3.清除操作clear()4.浏览器窗口最大化maximize_window()5.设置浏览器窗口大小set_window_size(a,b)6.设置浏览器位置set_window_position(a,b)7.浏览器后退back()8.浏览器前进forward()9.浏览器刷新refresh()10.关闭当前窗口close()11.关闭浏览器quit()12.获取页面标题title.

2021-07-17 18:21:19 193

原创 selenium(一)8种元素定位方式

1.id定位通过元素的id属性进行元素定位,在html标准规范中,id值是唯一的定位方法:find_element_by_id(属性值)2.name定位通过name属性来定位元素,name是允许重复的定位方法:find_element_by_name(属性值)3.class_name定位通过class属性来定位元素,class是允许重复的定位方法:find_element_by_class_name(属性值),属性值若有多个单词,如:“password input”,只需要取其中一个就.

2021-07-17 10:21:02 5597 1

原创 python包、模块

1.模块:一般模块命名规则同变量规则,使用小写字母+下划线命名"""导入模块import 模块名使用导入模块中的函数模块名.函数名"""import mytestprint(mytest.my_sum(2,4))"""导入模块时区别名导入模块import 模块名 as 别名使用导入模块中的函数别名.函数名"""import mytest as mtprint(mt.my_sum(2,4))"""导入指定内容导入模块from 模块名 import 函数名使用导入

2021-07-14 16:15:23 233

原创 python捕获异常

"""try: 可能出现异常的语句except 异常类型1: 出现异常后会自动执行的代码except 异常类型2: 出现异常后会自动执行的代码except: 出现未知异常后会自动执行的代码"""# 计算器案例练习try: a = int(input("请输入数字1:")) b = int(input("请输入数字2:")) op1 = input("请输入运算符号:") if op1 =="+": print(a.

2021-07-09 14:43:24 119

原创 python-unittest测试报告

"""两种方法可以生成测试报告1.TextTestRunner(unittest自带)2.HTMLTestRunner(第三方模板)"""# 创建一个名为mytest01.py的测试用例文件内容如下from parameterized import parameterizedimport unittest# 定义方法def my_sum(a,b): return a + b# 定义类,并继承父类unittest.TestCaseclass my_test1(unittes.

2021-07-08 14:58:35 825 1

原创 unittest参数化parameterized

# pip install parameterized安装依赖包# 若报错“Value for scheme.headers does not match",重装pip# 若报错“check_hostname requires server_hostname”,关掉本地所有代理和fiddler等代理软件重新执行即可"""使用步骤1.导入包 from parameterized import parameterized2.在方法上面使用 @parameterized.expand修饰方法,参数是.

2021-07-07 10:55:14 1371

原创 unittest断言

# 断言:判断测试用例执行结果是否符合预期"""assertEqual(参数1,参数2)如果参数1与参数2的值相等,则断言成功测试用例通过,若不相等则断言失败,测试不通过一般情况下参数1为实际结果,参数2为预期结果"""import unittest# 定义方法def my_sum(a,b): return a + b# 定义类,并继承父类unittest.TestCaseclass my_test(unittest.TestCase): # 编写第一个测试用例,测试用.

2021-07-05 15:05:47 193

原创 unittest测试框架基础用法

"""UnitTest是python自带的单元测试框架TestCase测试用例TestSuite测试套件,可以把多个TestCase集成到一个TestSuite中TestRunner执行测试用例TestLoader自动从代码中加载多个测试用例TestCaseFixure是UnitTest的特性"""# ************************************************************************# testCase# 案例:定义一个.

2021-07-03 10:12:09 423 1

原创 python文件操作

# 打开文件并只读文件file = open(r"D:\file\test.txt","r") # 第一个r代表方式转义,第二个r代表只读操作,只读文件必须存在# 读取文件txt = file.read()print(txt)# 关闭文件,若不关闭文件则会消耗内存file.close()# * ***************************************************************# 打开文件并写入内容# 若文件不存在则新建文件,若文件存在则覆盖文.

2021-06-29 18:21:24 151

原创 sql语句学习

按id倒序查询前5条数据select top 5 * from table order by id desc查询前百分之50select top 50 percent * from table查询符合多个条件select * from table where country = 'usa' or country = 'cn'插入行、列insert into table values(value1,value2)insert into table(id,name,n

2021-06-25 15:33:32 145

原创 python类的多态

#多态,不同的对象调用相同的父类方法,产生不同的结果class animal: #定义父类 def food(self): pass def eat(self): self.food()class cat(animal): #定义子类 def food(self): print('吃火腿')class cow(animal): #定义子类 def food(self): print('吃青草')c = .

2021-06-25 15:24:09 113

原创 python类方法和类属性

# 类属性,定义在类里面,方法的外面,不需要实例化类就可以直接使用# 调用的时候使用 类.属性名class dog: name = '哈士奇:汪!' #类属性定义,不需要self关键字,类似于定义变量 def __init__(self): passprint(dog.name) #调用类属性,不需要实例化可以直接调用dog.name = '秋田:汪!' #类属性赋值print(dog.name)# *****************************.

2021-06-25 15:19:43 285

原创 python类的继承

# 类b继承类a后,类b会拥有类a的所有属性和方法# 一个父类可以有多个不同的子类class a: #定义父类a def __init__(self,a1 = 23): #定义父类属性 self.a1 = a1 def a2(self): #定义父类方法 print(self.a1)class b(a): #定义子类b继承类a,子类(父类) def b1(self): print(self.a1) #调用类a的属性 de.

2021-06-23 15:42:37 325

原创 python类的封装

# 封装-把属性和方法封装到一个抽象类中# '__'私有属性或方法,只能用在类的内部使用,无法在类的外部访问class person: def __init__(self): self.name = 'marry' #定义属性name self.__weight = 150 #定义私有属性weight def eat(self): #定义方法 print('eating') def sleep(self): pri.

2021-06-22 16:34:24 385

原创 python面向对象二

# __del__方法,当对象在内存中销毁的时候自动调用,且不允许有别的参数,只能有self# 若无该方法,对象也会销毁,不过同时没有代码被执行# 定义__del__方法class 类: def __del__(self): pass# **********************************************class cat: def __init__(self,name = 'tom'): self.name = nam.

2021-06-22 14:39:04 70

原创 python面向对象一

# 类是一个模板,不可直接使用,如建筑设计图纸# 方法是类的行为,属性是类的特性# 对象是根据类实例化出来的# 一个类可能有多个对象,每个对象的属性的值可能不同,如人的属性有身高、体重、肤色等,方法有说话、跑步、吃饭# 类:名称、属性(变量)、方法(函数)# 定义类class 类名: def 方法名(self,参数1,参数2): passclass cat: def eat(self): print('小猫咪吃饭') def drin.

2021-06-19 10:20:34 185 1

原创 python基础案例练习二

# 一个学校有3个办公室,现在有8位老师,请给老师们随机分配工位# 定义学校和办公室school = [[],[],[]]# 定义老师列表teacher_list = []index = 1while index <= 8: # 创建老师的名字 teacher_name = '老师' + str(index) # 将老师名称放入老师列表中 teacher_list.append(teacher_name) index = index + 1..

2021-06-15 17:21:46 204

原创 python基础案例练习一

"""员工管理系统联系1.显示系统菜单2.获得用户输入的菜单3.根据用户的输入判断执行操作"""# 存储员工信息employee = {}def show_menu(): print('*'*20 + '员工管理系统菜单' + '*'*20) print('1.添加员工信息') print('2.删除员工信息') print('3.修改员工信息') print('4.查看员工信息') print('5.退出')# 添加员工信息def.

2021-06-15 17:17:42 406

原创 python元组与字典

# 元组是不能修改的序列容器# 元组比列表更节省空间,因为元组不可修改my_tuple = () #定义元组my_tuple = (10,20,30)print(my_tuple[1]) #元组下标索引print(my_tuple[1:]) #元组切片# 只有一个元素的元组需要在末尾添加逗号my_tuple = (10,)# 元组嵌套my_tuple = ((1,2),(10,20))my_tuple = ((10,),)# 元组中的元素不可修改my_num = (1,2,3)#.

2021-06-15 11:21:42 110

原创 python变量及字符类型

# input_content = input('请输入您的姓名:')# 格式输出# print('欢迎光临: %s' % input_content)# ********************************************************# 数据类型转换left_num = input('请输入第一个数字')right_num = input('请输入第二个数字')# 打印字符类型print(type(left_num),type(right_num)).

2021-06-15 10:55:48 148

原创 python中if、while分支语句

a = 10b = 20if a > b: ret = a + belse: ret = a - bprint('ret = %d' % ret)input_username = input('请输入用户名:')input_password = input('请输入密码:')correct_name = 'admin'correct_password = '123456'# 判断用户名和密码是否正确if input_username == correct_na.

2021-06-15 10:52:16 294 2

原创 python容器

# 遍历容器中的字符my_str = 'hello'i = 0while i < 5:#用下标的方式取字符,计数方式从左到右从0开始,从右到左从-1开始 print(my_str[i], end='') i = i + 1print() #换行# 简洁写法,for循环for v in my_str: print(v,end='')# *************************************************# 容器的专属方法(.

2021-06-15 10:50:37 68

原创 python列表

# 列表 list# 创建列表# my_list = [10,20,30]# my_list = ['aaa','bbb','ccc']# # 列表嵌套# my_list = [[1,2,3],1,2,3],1,2,3]]# 不同类型数据列表my_list = ['aaa',1.35,'ppp',[2,8,2]]# 列表遍历,支持索引和下标index = 0len = len(my_list)while index<len: print(my_list[index]).

2021-06-15 10:48:58 88

空空如也

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

TA关注的人

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