- 博客(25)
- 收藏
- 关注
原创 记录局域网压测遇到的一个域名解析顺序问题
环境:win+虚拟机1、项目部署2、nginx配置3、编写jmeter脚本4、发送请求以上,通过请求及项目访问都没有问题但是将jmeter脚本放到linux上分布式执行时,出现100%错误下面开始调查问题,为什么本地win访问成功,但是同一局域网的同台电脑上虚拟机linux访问失败呢?先排除并发导致的问题,将线程和时间调小,调短,发现还是100%错误,查看服务,正在运行状态,说明不是压力太大,导致的100%错误此时想单独请求查看返回结果,推荐使用postman可以做请求转
2021-02-08 17:54:21
377
原创 pytest注册命令行
pytest_addoption 可以让用户注册一个自定义的命令行参数,方便用户将数据传递给 pytest;这个 Hook 方法一般和 内置 fixture pytestconfig 配合使用,pytest_addoption 注册命令行参数,pytestconfig 通过配置对象读取参数的值;注册命令行import pytestimport def pytest_addoption(parser): '''添加命令行参数--browser、--host''' parser.add
2020-08-06 10:42:05
375
原创 pytest集成失败图片到html中并添加用例描述
import pytestfrom selenium import webdriverfrom py._xmlgen import html_driver = None# 测试失败时添加截图和测试用例描述(用例的注释信息)@pytest.mark.hookwrapperdef pytest_runtest_makereport(item): """当测试失败的时候,自动截图,展示到html报告中""" pytest_html = item.config.pluginmanag
2020-07-30 14:42:17
737
原创 fiddler auto responder
1、AutoResponder规则实例(1)打开Fiddler 找到要修改响应的会话, 把这个会话拖到AutoResponer Tab下(2)选择Enable automatic reaponses 和Unmatched requests passthrough(3)在下面的Rule Editor 下面选择 Find a file… 选择本地保存的响应文件. 最后点击Save 保存下。(4)重新请求此会话,看到响应为文件中的响应数据2、匹配规则(1)纯粹字符串匹配Fiddler将会按照不区分
2020-07-28 11:16:00
464
转载 selenium+options配置文件
from selenium.webdriver.chrome.options import Optionsfrom selenium import webdriverchrome_options = Options() # 模拟器设置chrome_options.add_argument('--headless') # 浏览器不提供可视化页面chrome_options.add_argument('--disable-gpu') # 谷
2020-07-16 17:10:05
478
原创 fiddler断点 bpu和bpafter
打断点有俩种方式1、在请求到达服务器之前2、在请求返回客户端之前全局断点:中断Fiddler捕获的所有请求,包括before和after在Fiddler菜单Rules>>Automatic Breakpoints>>Disabled在response请求之前和之后都进行打断点处理。打断点常用的几个命令bpu http://www.baidu.com (需要中断的url)在打断点操作前:按CTRL+Q进入编辑行1、根据需要,先修改你需要发给服务器的信
2020-07-03 11:10:39
2018
原创 python装饰器
装饰器之前,先了解闭包1、闭包闭包介绍及作用1、当函数调用完,内部的变量就会销毁2、闭包可以保存外部函数的变量,不会随着外部函数调用完而销毁3、如果需要使用函数内的变量,或者在变量的基础上完成相应的操作:例如:每次在这个变量的基础上和其他数据进行求和计算构成定义1、在函数嵌套的前提下,内部函数使用外部函数的变量,并且外部函数返回了内部函数2、使用外部函数变量的内部函数称为闭包闭包构成条件1、函数嵌套(函数中嵌套函数)2、内部函数使用外部函数的变量,也或者是参数3、外部函数返回了内部
2020-06-11 11:35:47
212
原创 用例失败自动抓图并集成到allure显示的代码
#1、定义装饰2层函数def screenshot_allure(func): def get_err_screenshot(self,*args,**kwargs):#2、定义内部函数,拍图操作 try: func(self,*args,**kwargs) except Exception as e: png = self.driver.get_screenshot_as_png() nam
2020-06-11 11:03:02
664
原创 MYSQL数据库时间函数
一、格式转化时间戳转换成日期FROM_UNIXTIMEselect FROM_UNIXTIME(1430236800,’%Y年%m月%d日’); //2015年04月29日日期转换成时间戳UNIX_TIMESTAMPSELECT UNIX_TIMESTAMP(‘2015-04-29’); //1430236800TO_DAYS(date) 返回日期date是西元0年至今多少天(不计算1582年以前)FROM_DAYS(N) 给出西元0年至今多少天返回DATE值(不计算1582年以
2020-05-28 19:29:41
288
原创 SQL between and 的使用及日期查询方式
between操作符的用法,操作符 BETWEEN … AND 会选取介于两个值之间的数据范围。这些值可以是数值、文本或者日期。SQL Server中 between and是包括边界值的,not between不包括边界值,不过如果使用between and 限定日期需要注意,如果and后的日期是到天的,那么默认为00:00:00 例如:and 后的日期为2017年04月06日,就等价于201...
2020-04-21 11:09:33
44060
原创 selenium文件上传的三种方式
`input`标签1、直接使用`ele.send_keys(text)`如果所遇见的上传文件使用的是input标签且属性type=file,均可使用,也最好采用此方法,方便,简单,执行效率高非`input`标签2、使用pywin32模块实现上传pywin32上传是通过查找窗体结构定位到输入文件框后输入文件实现文件上传dialog = win32gui.FindWindow('#3277...
2020-04-09 14:18:13
1071
原创 pytest插件探索assume/ordering/dependency/详解
多重校验 pytest-assume简单的校验assert,虽然可以写多个assert def test_add1(self): assert add(2,3)==5 assert add(1,3)==3 assert add(2,5)==7由于第二个断言失败,那么下面的断言就不会执行。所以如果需要多个断言,都执行就需要第三方插件 pyte...
2020-04-08 16:47:29
980
原创 pytest-xdist/pytest-parallel多进程执行测试用例
如果想分布式执行用例,用例设计必须遵循以下原则:1.用例之间都是独立的,2.用例a不要去依赖用例b3.用例执行没先后顺序,4.随机都能执行每个用例都能独立运行成功每个用例都能重复运行,不影响其它用例这跟就我们平常多个人工测试一样,用例都是独立的,可以随机分配不同人员执行,互相不依赖,用例之间也不存在先后顺序pytest-xdist安装及查看是否安装安装pip install pyt...
2020-04-08 16:21:38
5594
原创 Selenium中JS处理滚动条
一、JS处理滚动条问题1、滚动条回到顶部:js="var q=document.getElementById('id').scrollTop=0"driver.execute_script(js)或者js="var q=document.documentElement.scrollTop=0"driver.execute_script(js)2、滚动条拉到底部:js...
2020-03-25 23:05:56
553
原创 解决自动化测试依赖问题
在excel模板中涉及到数据依赖的列如下图所示:一共有:rely_case_id、rely_data、request_rely_file及request_data 这四列。rely_case_id:表示当前case所依赖的数据所在的case idrely_data:表示当前case所依赖的case的数据所对应的响应结果的字段(可能一些同学不明白,为什么这里不是直接写依赖的数据,因为接口所依...
2020-03-24 10:47:45
981
原创 pytest -- 缓存:记录执行的状态
目录摘要1. cacheprovider插件1.1. --lf, --last-failed:只执行上一轮失败的用例1.2. --ff, --failed-first:先执行上一轮失败的用例,再执行其它的1.3. --nf, --new-first:先执行新加的或修改的用例,再执行其它的1.4. --cache-clear:先清除所有缓存,再执行用例2. config.cache对象content...
2020-03-22 22:43:13
988
原创 jmeter调用python脚本
参考文章1:Jmeter 运行 Python 代码进行 AK/SK 认证 (使用 OS Process Sampler)思路是;jmeter调用shell,用shell执行py参考文章2:Jmeter执行python脚本函数使用说明jmeter-functions-execute-python-script-1.0.jar参考文章3https://www.cnblogs.com/te...
2020-03-22 22:07:22
683
原创 Pytest学习之fixture作用范围(scope)
‘’’fixture作用范围fixture里面有个scope参数可以控制fixture的作用范围:session > module > class > functionfunction 每一个函数或方法都会调用class 每一个类调用一次,一个类可以有多个方法module,每一个.py文件调用一次,该文件内又有多个function和classsession 是多个...
2020-03-22 21:38:20
343
原创 pytest学习总结2
目录pytest运行自定义命令行参数doctest框架装饰器usefixtureshtml报告+错误截图Allure2生成测试报告pytest运行自定义命令行参数1.首先需要在conftest.py添加命令行选项,命令行传入参数”—cmd“, 用例如果需要用到从命令行传入的参数,就调用cmd函数:# conftest.py import pytest def pytest_addo...
2020-03-22 21:18:14
549
原创 pytest学习总结1
自定义标题pytest用例设计原则setup与teardownfixture方法相较setup/teardown优势参数化parametrizepytest用例设计原则文件名以test_.py文件和test.py以test_开头的函数以Test开头的类以test_开头的方法所有的包pakege必须要有__init_.py文件用例按照你写的顺序去执行,不像unittest会按照数字和...
2020-03-22 20:56:24
364
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人