09 2019 档案

pytest-skip详解
摘要:pytest_skip.py::test_add s 25% ██▌ android #通过日志可见,因为系统环境变量设置为了android,所以后边显示s,代表跳过 pytest_skip.py::test_add2 ✓ 50% █████ windows #因为我的系统是macos,所以执行该用 阅读全文

posted @ 2019-09-29 10:32 barton123 阅读(234) 评论(0) 推荐(0)

collections库的namedtuple+pytest的使用
摘要:def test_defaults(): t1=Task() t2=Task(None,None,None,None)> assert t1==t2E assert Task(summary=...alse, id=None) == Task(summary=...None, id=None)E A 阅读全文

posted @ 2019-09-24 19:00 barton123 阅读(217) 评论(0) 推荐(0)

桩服务开发2---与python结合
摘要:from mitmproxy import httpdef request(flow): request_data=flow.request print(request_data)进入py目录,在终端执行mitmweb -p 9999 -s ./get_data.py 阅读全文

posted @ 2019-09-22 22:43 barton123 阅读(366) 评论(0) 推荐(0)

桩服务开发
摘要:pip3 install mitmproxy 先安装 mitmweb 启动mitmproxy mitmweb -p 9000 最好别用默认的8080 默认监听的是8080端口,需要把被测系统 配上代理8080 阅读全文

posted @ 2019-09-22 22:30 barton123 阅读(320) 评论(0) 推荐(0)

使用allure2生成精美报告
摘要:安装:brew install allure pip install allure-pytest 在测试执行期间收集结果 pytest -s –q --alluredir=./result/ 测试完成后查看实际报告, 在线看报告。 allure serve ./result/ 从结果生成报告,这是一 阅读全文

posted @ 2019-09-22 20:39 barton123 阅读(507) 评论(0) 推荐(0)

pytest-Allure安装
摘要:mac安装allure brew install allure 安装 brew info allure 查看信息 mac端需要配置环境变量 win安装: windows/mac通用安装 • https://github.com/allure-framework/allure2/releases • 阅读全文

posted @ 2019-09-22 20:07 barton123 阅读(426) 评论(0) 推荐(0)

多线程并行与分布式执行
摘要:场景:测试用例1000条,一个用例执行1钟,一个测试人员执行需要1000分 钟。通常我们会用人力成本换取时间成本,加几个人一起执行,时间就会缩 短。如果10人一起执行只需要100分钟,这就是一种并行测试,分布式场景。 解决:pytest分布式执行插件:pytest-xdist,多个CPU或主机执行 阅读全文

posted @ 2019-09-22 13:30 barton123 阅读(358) 评论(0) 推荐(0)

执行用例失败后重新运行
摘要:场景: • 测试失败后要重新运行n次,要在重新运行之间添加延迟时 间,间隔n秒再运行。 • 执行: • 安装:pip install pytest-rerunfailures 场景: • 测试失败后要重新运行n次,要在重新运行之间添加延迟时 间,间隔n秒再运行。 • 执行: • 安装:pip ins 阅读全文

posted @ 2019-09-22 13:24 barton123 阅读(362) 评论(0) 推荐(0)

执行用例遇到错误停止
摘要:• 场景: • 正常全部执行完成后才能停止,如果想遇到错误时停止测试: -x;也可以当用例错误个数n达到指定数量时,停止测试:- - maxfail=n • 执行: • pytest -x -v -s 文件名.py -x是遇到错误就停止 • pytest -x -v -s 文件名.py —maxfa 阅读全文

posted @ 2019-09-22 13:07 barton123 阅读(711) 评论(0) 推荐(0)

pytest-调整测试用例的执行顺序
摘要:场景:未考虑按自然顺序执行时,或想变更执行顺序,比如增加 数据的用例要先执行,再执行删除的用例。测试用例默认是按名 称顺序执行的。 • 解决: • 安装:pip install pytest-ordering • 在测试方法上加下面装饰器 场景:未考虑按自然顺序执行时,或想变更执行顺序,比如增加 数 阅读全文

posted @ 2019-09-22 12:53 barton123 阅读(6281) 评论(0) 推荐(1)

pytest_参数化之3*3
摘要:pytest_mark_request3.py::test_login[login_r1-query_param0] ✓ 44% ████▌ 查询的搜索词pddNone{'q': 'pdd', 'count': 3, 'page': 1} pytest_mark_request3.py::test_ 阅读全文

posted @ 2019-09-22 09:29 barton123 阅读(229) 评论(0) 推荐(0)

pytest_参数化3
摘要:开首页准备登陆,登陆用户linda,密码8888PASSED [ 33%]测试用例中login_r的返回值True 打开首页准备登陆,登陆用户servenruby,密码123456PASSED [ 66%]测试用例中login_r的返回值True 打开首页准备登陆,登陆用户test01,密码FAIL 阅读全文

posted @ 2019-09-22 09:06 barton123 阅读(218) 评论(0) 推荐(0)

pytest-参数化2
摘要:Process finished with exit code 0打开首页登陆lindaPASSED [ 33%]不同用户添加购物车linda打开首页登陆saiPASSED [ 66%]不同用户添加购物车sai打开首页登陆tomPASSED [100%]不同用户添加购物车tom 阅读全文

posted @ 2019-09-21 23:43 barton123 阅读(181) 评论(0) 推荐(0)

pytest---参数化
摘要:est_param.py::test_eval[2-1-1] test_param.py::test_eval[7*5-30] PASSED [ 33%]PASSED [ 66%]FAILED [100%]test_param.py:3 (test_eval[7*5-30])35 != 30 Exp 阅读全文

posted @ 2019-09-21 23:31 barton123 阅读(166) 评论(0) 推荐(0)

pytest--fixure前置执行一个函数
摘要:pytest_twofixture.py::test_soso PASSED [ 50%]case3 pytest_twofixture.py::test_cart 登陆PASSED [100%]case4 案例2 pytest_twofixture.py::test_soso PASSED [ 5 阅读全文

posted @ 2019-09-21 23:06 barton123 阅读(416) 评论(0) 推荐(0)

pytest--fixture---自动应用
摘要:打开浏览器登陆PASSED [ 50%]case3 pytest_twofixture.py::test_cart 打开浏览器登陆PASSED [100%]case4 阅读全文

posted @ 2019-09-21 23:00 barton123 阅读(233) 评论(0) 推荐(0)

pytest--两个fixture时,灵活运用
摘要:pytest_twofixture.py::test_soso 打开浏览器PASSED [ 50%]case3 pytest_twofixture.py::test_cart 打开浏览器登陆PASSED [100%]case4 阅读全文

posted @ 2019-09-21 22:58 barton123 阅读(185) 评论(0) 推荐(0)

pytest--fixture之参数化
摘要:场景:测试用例执行时,有的用例需要登陆才能执行,有些用例 不需要登陆。setup和teardown无法满足。fixture可以。默认 scope(范围)function • 步骤: 1. 导入pytest 2. 在登陆的函数上面加@pytest.fixture() 3. 在要使用的测试方法中传入(登 阅读全文

posted @ 2019-09-21 22:45 barton123 阅读(438) 评论(0) 推荐(0)

pytest_fixture--scope="session"
摘要:pytest_fixture.py::test_cart 输入用户名密码登陆! configtestPASSED [ 33%]用例1,登陆后执行添加购物车功能操作 pytest_fixture.py::test_search PASSED [ 66%]用例2,不登陆查询功能操作 pytest_fix 阅读全文

posted @ 2019-09-21 22:37 barton123 阅读(1343) 评论(0) 推荐(0)

pytest_fixture-----conftest共享数据及不同层次共享
摘要:场景:你与其他测试工程师合作一起开发时,公共的模块要在不同文件中,要 在大家都访问到的地方。 解决:使用conftest.py 这个文件进行数据共享,并且他可以放在不同位置起 着不同的范围共享作用。 前提:conftest文件名是不能换的,放在项目下是全局的数据共享的地方,全 局的配置和前期工作都可 阅读全文

posted @ 2019-09-21 22:31 barton123 阅读(550) 评论(0) 推荐(0)

pytest----fixture(1)--使用fixture执行配置及销毁逻辑
摘要:1使用fixture执行配 置及销毁;非常灵活 使用。 2数据共享:在 conftest.py配置里写方 法可以实现数据共享, 不需要import导入。可 以跨文件共享 3scope的层次及神 奇的yield组合相当 于各种setup 和teardown 使用fixture执行配置及销毁逻辑 场景: 阅读全文

posted @ 2019-09-21 22:22 barton123 阅读(472) 评论(0) 推荐(0)

pytest-文件名类名方法名执行部分用例
摘要:pytest test_class_01.py 执行文件名 pytest -v -s test_class_01.py 执行文件名 pytest -v test_class_01.py::TestClass 执行类名 pytest -v test_class_01.py::TestClass::te 阅读全文

posted @ 2019-09-21 17:51 barton123 阅读(633) 评论(0) 推荐(0)

pytest_按标记执行
摘要:pytest -s test_mark.py -m 'not ios' 执行标记不等于ios的 pytest -s test_mark.py -m ios 只执行标记==ios的 pytest -s test_mark.py -m=ios 只执行标记==ios的 阅读全文

posted @ 2019-09-21 17:46 barton123 阅读(289) 评论(0) 推荐(0)

统计列表中出现的个数,统计列表中元素出现的个数
摘要:今天竟然犯傻了,竟然理解错了 {'a': 3, 1: 5, 2: 2, 3: 2, 'c': 1, 4: 1, 6: 1} 阅读全文

posted @ 2019-09-21 16:38 barton123 阅读(3604) 评论(0) 推荐(0)

pytest-mark跳过
摘要:import pytestimport sysenvironment='android'@pytest.mark.skipif(environment=="android",reason='android平台没有这个功能,只有ios下有')def test_add(): print("apple")def test_add2(): print("android")@pytest.mark.skip 阅读全文

posted @ 2019-09-21 15:48 barton123 阅读(259) 评论(0) 推荐(0)

pytest的断言、跳过、运行的按需要处理
摘要:def test_one(): assert 1==1 assert 1!=2 assert {'name':'linda','age':19}=={'name':'linda','age':190} assert 'hello' in 'helloworld' age=35 assert 20<age<80 assert (1<2) ==Truedef f(): return 3def test 阅读全文

posted @ 2019-09-21 14:53 barton123 阅读(381) 评论(0) 推荐(0)

Pytest初体验
摘要:Pytest安装,导入相关依赖哭 Pip3 install –U pytest U表示升级 Pip3 install pytestsugar pip3 install pytest-rerunfailures Pip3 install pytest-xdist Pip3 install pytest 阅读全文

posted @ 2019-09-21 14:15 barton123 阅读(198) 评论(0) 推荐(0)

Python的序列化和反序列化
摘要:序列化是将dict >str 反序列化是将str >dict 打印结果:{"a": 1, "b": 2} <class 'str'> {'a': 1, 'b': 2} <class 'dict'> 那么,为什么要做序列化呢? 1.便于存储。序列化过程将文本信息转变为二进制数据流。这样就信息就容易存储 阅读全文

posted @ 2019-09-19 19:17 barton123 阅读(194) 评论(0) 推荐(0)

一键抓取Android的Locat Log
摘要:很多小伙伴在做App测试时,一遇到Cash,开发同学最常说的一句话,就是抓下Locat日志,很多小伙伴一听到这个抓取日志就会觉得有点烦。 ​主要有2点: ​ ​ ​1、是这个bug可能不好复现 ​ ​ ​2、可能不知道怎么更快的抓取日志 ​下面小弟分享一个可以秒抓取Android Log的日志的脚本 阅读全文

posted @ 2019-09-18 13:17 barton123 阅读(272) 评论(0) 推荐(0)

一键获取Android的appActvity和PackName
摘要:大家平常写Appium自动化时,可能写脚本半小时,得有5分钟用来去看Activity,大部分都是通过adb命令的方式来获取。为了提高效率,可以把这个命令放到python里去执行,然后根据规则去筛选出自己想要的信息,好啦。不说废话啦,来个秒找到 AppActivity的脚本吧,帮大家每天多节约5分钟哈 阅读全文

posted @ 2019-09-18 10:13 barton123 阅读(593) 评论(0) 推荐(0)

python 小技巧,给设计好的dict 增加嵌套值
摘要:那么在python3.5 后给我提供了一个collections模块可以解决。 defaultdict允许我们用一个聪明的方式绕过这个问题。 首先我分享一个使用dict触发KeyError的例子,然后提供一个使用defaultdict的解决方案。 1 2 3 4 5 6 7 import colle 阅读全文

posted @ 2019-09-17 13:52 barton123 阅读(210) 评论(0) 推荐(0)

35岁以上的测试都去哪了》?
摘要:​可能是因为年纪的关系,认识的测试的朋友大多是到了30岁左右的年纪,很多初入这个行业和想转行的入,大多都很好奇这个​年纪的测试都去哪里了?今天由小弟给大家说下小弟浅见。 ​到了30岁是否转行,取决这个人在一个行业下的某个领域的深入程度,就是大家常说的T字型发展路线。很多干到了四五年就想转行,一般两个 阅读全文

posted @ 2019-09-17 10:12 barton123 阅读(422) 评论(0) 推荐(0)

Reqests----Get请求之参数化
摘要:一、环境安装 注意:pip很容易就会版本升级,如果用python3的,请使用pip3 install requests 1、初始化版本 2、把请求参数放到外面,也可方便做参数化 3、参数化版 每天学习一点点,才可以厚积薄发哦 阅读全文

posted @ 2019-09-16 12:50 barton123 阅读(433) 评论(0) 推荐(0)

locust性能测试框架随笔
摘要:现在有很多的性能测试工具,比如说我们熟悉的loadrunner、jmeter、ab、webbench等等,这些工具如果对一个没用过的朋友来说,学习起来比较不容易,但是如果你能看懂python代码,会写就更好了,就可用尝试一下今天的主角Locust,一款基于python的性能测试工具,它的优点是学习起 阅读全文

posted @ 2019-09-16 10:07 barton123 阅读(235) 评论(0) 推荐(0)

Jmeter+ant
摘要:1、下载 ant,解压到非中文目录,并配置环境变量,不会的自行 google 2、将 jmeter 中 extras 子目录里的 ant-jmeter-1.1.1.jar 复制到 ant 中的 lib 子目录下 3、修 改 jmeter 中 bin 目 录 下 的 jmeter.properties 阅读全文

posted @ 2019-09-15 16:48 barton123 阅读(201) 评论(0) 推荐(0)

jp@gc - Stepping Thread Group (deprecated)
摘要:并发6个用户,线程之前不等待,每隔3秒增加1个用户,间隔时间是2秒,然后并发数增加完成之后,运行60秒,运行完成后,每1秒钟停止2个用户 并发6个用户,线程之前不等待,每隔3秒增加1个用户,间隔时间是2秒,然后并发数增加完成之后,运行60秒,运行完成后,每1秒钟停止2个用户 阅读全文

posted @ 2019-09-15 00:15 barton123 阅读(347) 评论(0) 推荐(0)

分布式配置流程
摘要:分布式是什么?为什么要用分布式? 因为 jmeter 本身的限制,想在一台机器上并发较大用户时(大概 300 个左右,这个要 看各自机器的配置)可能会卡死,所以需要把加压分布到不同的机器上,这样就能有效解决 这个问题。大家可以理解为将大量的模拟并发分配给多台压力机,来满足较大流量的并发请求。 前提条 阅读全文

posted @ 2019-09-14 23:36 barton123 阅读(322) 评论(0) 推荐(0)

Aggregate report 聚合报告
摘要: 阅读全文

posted @ 2019-09-14 22:38 barton123 阅读(189) 评论(0) 推荐(0)

Summary 报告
摘要:1.需要在添加一个名为summary report的监听器,跑完之后查看 Label:取样器/监听器名称 Samples :事务数量 Average:平均一个完成一个事务消耗的时间(平均响应时间) Median:所有响应时间的中间值,也就是 50% 用户的响应时间,大概是这个意思 Min:最小响应时 阅读全文

posted @ 2019-09-14 22:25 barton123 阅读(306) 评论(0) 推荐(0)

随机顺序控制器
摘要:把下面的请求都执行对应的循环次数,不过俩个请求之间的执行顺序是打乱的 阅读全文

posted @ 2019-09-14 22:10 barton123 阅读(190) 评论(0) 推荐(0)

随机控制器
摘要:随机执行底下的请求 阅读全文

posted @ 2019-09-14 22:08 barton123 阅读(122) 评论(0) 推荐(0)

吞吐量控制器
摘要:用来控制子节点控制次数的 比如设置1个线程,循环5次,第一个控制器设置为3,下面的为2,那么第一个就会执行3次,第二个就会执行2次 业务逻辑: 他的实际作用似乎跟吞吐量扯不上什么关系。就是单纯的控制控制器下的子节点被执行的次数或被执行比列,该控制器默认为多线程使用共通的。吞吐量的值可以以变量表示。 阅读全文

posted @ 2019-09-14 21:56 barton123 阅读(588) 评论(0) 推荐(0)

循环控制器
摘要:指定子节点的循环次数为5次 如果线程组也设置了循环次次数为5,那就是用5*5,执行25次 阅读全文

posted @ 2019-09-14 21:31 barton123 阅读(208) 评论(0) 推荐(0)

事务控制器
摘要:勾选第一条后,他是对这俩个请求事务的统计,把他们当作一个整体来统计,如果不勾选,就是先单独做统计,在整体做统计 如果勾选第二个,会统计定时时间的 阅读全文

posted @ 2019-09-14 19:30 barton123 阅读(151) 评论(0) 推荐(0)

if控制器
摘要:因为比较的是字符串,所以要在两边加双引号哦 阅读全文

posted @ 2019-09-14 19:23 barton123 阅读(143) 评论(0) 推荐(0)

Switch控制器
摘要:比如目前有qq和百度两个网站,switch可以指定选择一个 Switch value是填写索引值,从0开始。也可以书去请求的名词比如,qq或者百度 填写0就是访问qq 填写1就是访问百度 阅读全文

posted @ 2019-09-14 19:03 barton123 阅读(310) 评论(0) 推荐(0)

ForEach控制器
摘要:ForEach一般是和用户定义的变量结合使用的 前面前缀一般是和用户定义的变量前缀一致 输出的变量是要使用的变量 这样能保证每次使用的变量不一样 add"_"before number 因为变量中间有“_” 第一次执行的就是51cto,第二次就是qq。 阅读全文

posted @ 2019-09-14 18:55 barton123 阅读(143) 评论(0) 推荐(0)

简单控制器
摘要:简单控制器没有任何实际作用,主要用来分组。 阅读全文

posted @ 2019-09-14 18:41 barton123 阅读(127) 评论(0) 推荐(0)

高斯定时器
摘要:如果设置了100和300,那就是线程的等待时间在100毫秒和400毫秒直接,随机去取的 阅读全文

posted @ 2019-09-14 14:53 barton123 阅读(222) 评论(0) 推荐(0)

Size Assert
摘要:判断返回内容的大小 阅读全文

posted @ 2019-09-14 14:49 barton123 阅读(90) 评论(0) 推荐(0)

持续时间断言
摘要:如果持续时间设置300毫秒,那如果接口响应时间超过300毫秒,就会保存 阅读全文

posted @ 2019-09-14 14:47 barton123 阅读(194) 评论(0) 推荐(0)

响应断言和json asstion
摘要:1、要勾选Additionallly assert value才可以输入下面的预期结果哦 阅读全文

posted @ 2019-09-14 14:40 barton123 阅读(275) 评论(0) 推荐(0)

HTTP信息头处理器
摘要:就是HTTP请求头-Header 阅读全文

posted @ 2019-09-14 14:36 barton123 阅读(205) 评论(0) 推荐(0)

Synchronizing Timer----集合点定时器
摘要:1、Number of Simulated Users to Group by:意思是比如设置是10,那会等到有10个线程到时候,才放行 2、Timeout in millilseconds:比如设置1000毫秒,比如设置10个线程才放行,1000毫秒后,只有9个线程到了,那就直接放行,不再等待 阅读全文

posted @ 2019-09-14 14:33 barton123 阅读(212) 评论(0) 推荐(0)

定时器
摘要:规则: 1、不论什么定时器,都是在HTTP请求之前执行的。 2、如果想让定时器指定一个http请求的话,就放在他的子节点 可以看到效果,等6000毫秒开始执行 阅读全文

posted @ 2019-09-14 14:26 barton123 阅读(111) 评论(0) 推荐(0)

计数器
摘要:1、String Value 起始值 2、递增:步长 3、Maximum value:最大值 4、引用名称:变量名 5、与每用户独立的跟踪计数器 :如果勾选,每个用户都单独计数 阅读全文

posted @ 2019-09-14 14:13 barton123 阅读(169) 评论(0) 推荐(0)

HTTP请求默认值
摘要:填写后,后面的请求如果对应的未填写,默认使用该参数 阅读全文

posted @ 2019-09-14 11:50 barton123 阅读(495) 评论(0) 推荐(0)

BeanShell Sampler生成uuid
摘要: 阅读全文

posted @ 2019-09-14 01:34 barton123 阅读(351) 评论(0) 推荐(0)

websocket接口测试
摘要:1、先在jmeter的插件管理器安装webSocket的插件,WebSocket 常规选项解释如下: ip:测试服务器域名 Streaming Connection:请求之后是否保持连接,勾选之后在同一次 http 内继续会 话 protocol:ws/wss,wss 是在 websocket 连接 阅读全文

posted @ 2019-09-14 01:13 barton123 阅读(1586) 评论(0) 推荐(0)

jdbc出现中文乱码的解决办法
摘要: 阅读全文

posted @ 2019-09-14 00:35 barton123 阅读(212) 评论(0) 推荐(0)

jdbc_mysql----函数助手参数化
摘要:第一个值填写的是文件路径 第二个值填写的是从第几个开始执行,从0开始 阅读全文

posted @ 2019-09-14 00:32 barton123 阅读(188) 评论(0) 推荐(0)

jdbc_mysql----interset
摘要: 阅读全文

posted @ 2019-09-14 00:24 barton123 阅读(227) 评论(0) 推荐(0)

连接mysql并查询
摘要:1、将mysql-connector-java-5.1.7-bin.jar放入Jmeter安装目录的bin文件夹中 2、在顶层目录<测试计划>中加载驱动 3、添加JDBC Connection Configuration 4、配置数据库信息 1)Variable Name不能为空 2)DataBas 阅读全文

posted @ 2019-09-14 00:23 barton123 阅读(257) 评论(0) 推荐(0)

请求参数MD5加密---函数助手
摘要: 阅读全文

posted @ 2019-09-13 23:35 barton123 阅读(231) 评论(0) 推荐(0)

调用第三方jar包_md5加密
摘要:vars.put是转换成jmeter格式 阅读全文

posted @ 2019-09-13 23:21 barton123 阅读(495) 评论(0) 推荐(0)

Xpath-Extraction 关联
摘要://*[local-name()="qqCheckOnlineResult"] //开头 *代表的是任意的标签 local-name():寻找标签名 阅读全文

posted @ 2019-09-13 22:54 barton123 阅读(176) 评论(0) 推荐(0)

Xpath-Assertion断言
摘要: 阅读全文

posted @ 2019-09-13 22:42 barton123 阅读(121) 评论(0) 推荐(0)

WebService接口测试
摘要: 阅读全文

posted @ 2019-09-13 22:32 barton123 阅读(114) 评论(0) 推荐(0)

Cookie自动管理
摘要:如果想要对 cookies 干点什么就需要 HTTP Cookie 管理器了。 啥是 cookies 呢。储存在用户本地终端上的数据通常情况下,当用户结束浏览器会话 时,系统将终止所有的 Cookie。当 Web 服务器创建了 Cookies 后,只要在其有效期内, 当用户访问同一个 Web 服务器 阅读全文

posted @ 2019-09-13 21:57 barton123 阅读(307) 评论(0) 推荐(0)

Jmeter-----请求依赖之JsonExtractor
摘要:层级关系填写: 1、第一个必须是$ 2、用英文状态下的 . 来代表下一个层级 阅读全文

posted @ 2019-09-13 21:38 barton123 阅读(161) 评论(0) 推荐(0)

Jmeter----请求依赖之边界值提取器
摘要:填写左边界和右边界 引用变量名就是要存储的变量名词 阅读全文

posted @ 2019-09-13 21:30 barton123 阅读(1354) 评论(0) 推荐(0)

Jmeter----函数助手参数化
摘要:要填写开始日期和结束日期和赋值的变量名 阅读全文

posted @ 2019-09-13 21:03 barton123 阅读(228) 评论(0) 推荐(0)

Jmeter----参数化之csv文件
摘要:用户编码:一般不用填写,如果有中文的时候,需要填写,填写utf-8就可以 变量名词:是指的把数据保存在什么变量里面,其他的默认就好了 Http请求和用户参数设置的一样 阅读全文

posted @ 2019-09-13 20:46 barton123 阅读(183) 评论(0) 推荐(0)

Jmeter---参数化之用户参数
摘要:总结: 参数化几次就要设置几个线程,执行的时候,是按顺序执行,下面的请求也会跟着请求 阅读全文

posted @ 2019-09-13 20:30 barton123 阅读(202) 评论(0) 推荐(0)

JSON
摘要:3.5. JSON JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。 3.5.1. JSON语法 对象表示为键值对 数据由逗号分隔 花括号保存对象 方括号保存数组 怎 阅读全文

posted @ 2019-09-12 20:27 barton123 阅读(139) 评论(0) 推荐(0)

HTTP
摘要:在讲HTTP之前,我们先讲一下什么是协议 3.4.1. 什么是协议 通俗来讲,协议可以理解为约定,比如说下午一到6点,你就知道要下班了,这是因为公司有制度规定6点下班,协议可以很简单,但也可以很复杂,比如语言就是一种很复杂的协议,有大量的词汇代表不同的意思 3.4.1. 什么是协议 通俗来讲,协议可 阅读全文

posted @ 2019-09-12 20:26 barton123 阅读(320) 评论(0) 推荐(0)

URL的组成和含义
摘要:1.URL - Uniform Resource Locator 当您点击 HTML 页面中的某个链接时,对应的 <a>标签指向万维网上的一个地址。 统一资源定位器(URL)用于定位万维网上的文档(或其他数据)。 2. ? 1)连接作用:比如 2)清除缓存:比如 两个url打开的页面一样,但是后面这 阅读全文

posted @ 2019-09-12 20:25 barton123 阅读(3239) 评论(0) 推荐(0)

python3+requests:post请求四种传送正文方式(详解)
摘要:前言:post请求我在python接口自动化2-发送post请求详解(二)已经讲过一部分了,主要是发送一些较长的数据,还有就是数据比较安全等,可以参考Get,Post请求方式经典详解进行学习一下。 我们要知道post请求四种传送正文方式首先需要先了解一下常见的四种编码方式: HTTP 协议规定 PO 阅读全文

posted @ 2019-09-12 20:24 barton123 阅读(710) 评论(0) 推荐(0)

Status Code状态码详解对照表
摘要:Status Code状态码详解对照表 状态码 含义 100 客户端应当继续发送请求。这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝。客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽略这个响应。服务器必须在请求完成后向客户端发送一个最终响应。 101 服务器已经理解 阅读全文

posted @ 2019-09-12 20:24 barton123 阅读(1537) 评论(0) 推荐(0)

python接口自动化发送get请求 详解(一)
摘要:前言:接口自动化实现自动化脚本比较稳定,主要用到requests模块,后面我会把这个模块单独拉出来写一下。 一、环境安装 1.用pip安装requests模块 注意:pip很容易就会版本升级, 方法1:检测并更新 方法2: ♦先卸载: ♦在用:easy_install.exe安装 二、get请求 ♦ 阅读全文

posted @ 2019-09-12 20:24 barton123 阅读(411) 评论(0) 推荐(0)

Postman使用手册1——导入导出和发送请求查看响应
摘要:现在的web和移动开发,常常会调用服务器提供restful接口进行数据请求,为了调试,一般会先用工具进行测试,通过测试后才开始在开发中使用。这里介绍一下如何在chrome浏览器利用postman应用进行restful api接口请求测试。 一、导入导出打包的应用 在Postman中导入导出我们的 测 阅读全文

posted @ 2019-09-12 20:23 barton123 阅读(845) 评论(0) 推荐(0)

Postman使用手册2——管理收藏
摘要:一、开始使用收藏夹 收藏夹会使你的工作效率更上一层楼 收藏夹可以让单个的request分组在一起,这些request可以被进一步的管理到文件夹来更准确的反应你的API。request也可以在保存到收藏夹时存储response例子。你也可以给你的request增加名称或相关描述,使得开发者可以更轻松的 阅读全文

posted @ 2019-09-12 20:22 barton123 阅读(364) 评论(0) 推荐(0)

Postman使用手册4——API test
摘要:一、Pre Request Scripts Postman v0.10+ 版本支持pre-request scripts。 prerequest script.png prerequest script.png pre-request scripts是一个关联了收藏夹内request,并且在发送re 阅读全文

posted @ 2019-09-12 20:21 barton123 阅读(246) 评论(0) 推荐(0)

Postman使用手册3——环境变量
摘要:一、环境变量 当使用API的时候,你可能经常需要使用不同的设置。环境设置可以让你使用变量自定义request。这个方法可以让你轻松的在不同的设置之间改变而不用改变你的request。你不需要担心要记住Postman中所有的这些变量的值。环境可以下载保存为JSON文件,以后可以再加载他。 manage 阅读全文

posted @ 2019-09-12 20:21 barton123 阅读(182) 评论(0) 推荐(0)

python+requests接口自动化测试框架实例详解
摘要:前段时间由于公司测试方向的转型,由原来的web页面功能测试转变成接口测试,之前大多都是手工进行,利用postman和jmeter进行的接口测试,后来,组内有人讲原先web自动化的测试框架移驾成接口的自动化框架,使用的是java语言,但对于一个学java,却在学python的我来说,觉得python比 阅读全文

posted @ 2019-09-12 20:20 barton123 阅读(351) 评论(0) 推荐(0)

requests库和urllib包对比
摘要:python中有多种库可以用来处理http请求,比如python的原生库:urllib包、requests类库。urllib和urllib2是相互独立的模块,python3.0以上把urllib和urllib2合并成一个库了,requests库使用了urllib3。requests库的口号是“HTT 阅读全文

posted @ 2019-09-12 20:20 barton123 阅读(1563) 评论(0) 推荐(0)

线程池原理
摘要:在面向对象编程中,对象创建和销毁是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源。在Java中更是如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁后进行垃圾回收。所以提高服务程序效率的一个手段就是尽可能减少创建和销毁对象的次数,特别是对一些很耗资源的对象创建和销毁。如何利用已有对象来 阅读全文

posted @ 2019-09-12 20:19 barton123 阅读(162) 评论(0) 推荐(0)

python数据类型详解(全面)
摘要:目录1、字符串2、布尔类型3、整数4、浮点数5、数字6、列表7、元组8、字典9、日期 1、字符串1.1、如何在Python中使用字符串a、使用单引号(')用单引号括起来表示字符串,例如:str='this is string';print str; b、使用双引号(")双引号中的字符串与单引号中的字 阅读全文

posted @ 2019-09-12 20:17 barton123 阅读(250) 评论(0) 推荐(0)

装饰器
摘要:由于函数也是一个对象,而且函数对象可以被赋值给变量,所以,通过变量也能调用该函数。 函数对象有一个__name__属性,可以拿到函数的名字: 现在,假设我们要增强now()函数的功能,比如,在函数调用前后自动打印日志,但又不希望修改now()函数的定义,这种在代码运行期间动态增加功能的方式,称之为“ 阅读全文

posted @ 2019-09-12 20:16 barton123 阅读(141) 评论(0) 推荐(0)

logging模块全总结
摘要:本节内容 一、日志相关概念 日志是一种可以追踪某些软件运行时所发生事件的方法。软件开发人员可以向他们的代码中调用日志记录相关的方法来表明发生了某些事情。一个事件可以用一个可包含可选变量数据的消息来描述。此外,事件也有重要性的概念,这个重要性也可以被称为严重性级别(level)。 1.日志的作用 通过 阅读全文

posted @ 2019-09-12 20:15 barton123 阅读(271) 评论(0) 推荐(0)

日常问题总结
摘要:1.python cannot import name XXX python中可能刚开始的童鞋会遇到 cannot import name ‘XXX’, 其实明白了其中的原理就很容易解决了,而且以后遇到此类问题马上就能明白是哪里出问题了。其实这是出现再模块导入的顺序问题上,比如: from A im 阅读全文

posted @ 2019-09-12 20:14 barton123 阅读(188) 评论(0) 推荐(0)

python常用内置函数
摘要:数学运算函数: 类型转换函数: 序列操作函数: 输入输出函数: 创建函数: 获取函数: 判断函数: 操作函数: 下面是函数的详细介绍: 函数名:abs() 语法: 参数:数值表达式 返回值:函数返回x(数字)的绝对值。 代码示例: 函数名:divmod() 语法: 参数:a,b均为数值 返回值:一个 阅读全文

posted @ 2019-09-12 20:13 barton123 阅读(354) 评论(0) 推荐(0)

python装饰器中functools.wraps的作用详解
摘要:以上代码的输出结果为: 由此函数使用装饰器时,函数的函数名即 __name__已经被装饰器改变. 一般定义装饰器的话可以不用考虑这点,但是如果多个函数被两个装饰器装饰时就报错,因为两个函数名一样,第二个函数再去装饰的话就报错. 解决方案就是引入 functools.wraps ,以上代码的解决如下: 阅读全文

posted @ 2019-09-12 20:11 barton123 阅读(574) 评论(0) 推荐(0)

Python之路Python全局变量与局部变量、函数多层嵌套、函数递归
摘要:一、局部变量与全局变量 1、在子程序中定义的变量称为局部变量,在程序的一开始定义的变量称为全局变量。全局变量作用域是整个程序,局部变量作用域是定义该变量的子程序。 全局变量没有任何缩进,在任何位置都可以调用。 子程序:如用def定义的函数。 作用域 一个标识符的可见范围,这就是标识符的作用域。一般常 阅读全文

posted @ 2019-09-12 20:10 barton123 阅读(747) 评论(0) 推荐(0)

Python之路番外:PYTHON基本数据类型和小知识点
摘要:一、基础小知识点 1、如果一行代码过长,可以用续行符 \换行书写 例子 if (signal == "red") and \ (car == "moving"): car = "stop" else : pass 等同于 if (signal == "red") and (car == "movin 阅读全文

posted @ 2019-09-12 20:09 barton123 阅读(241) 评论(0) 推荐(0)

Python之路Python作用域、匿名函数、函数式编程、map函数、filter函数、reduce函数
摘要:一、作用域 return 可以返回任意值例子 输出结果 分析:这里print(res)输出的是test1函数在内存中的地址,return也是可以返回的,加上括号就可以运行函数了 例子2 输出结果 分析:test1函数返回了inner函数的内存地址,并被赋值给res,所以最后在res后加上括号就可以直 阅读全文

posted @ 2019-09-12 20:09 barton123 阅读(220) 评论(0) 推荐(0)

Python之路Python内置函数、zip()、max()、min()
摘要:一、python内置函数 abs() 求绝对值 例子 all() 把序列中每一个元素做布尔运算,如果全部都是true,就返回true, 但是如果是空字符串、空列表也返回true 例子 输出结果 例子2 输出结果 any() 把序列中每一个元素做布尔运算,如果有一个为true就返回true, 但是有两 阅读全文

posted @ 2019-09-12 20:08 barton123 阅读(336) 评论(0) 推荐(0)

Python编程笔记二进制、字符编码、数据类型
摘要:一、二进制 bin() 在python中可以用bin()内置函数获取一个十进制的数的二进制 计算机容量单位 8bit = 1 bytes 字节,最小的存储单位,1bytes缩写为1B 1KB = 1024B 1MB = 1024KB 1GB = 1024MB 1TB = 1024 GB 1PB = 阅读全文

posted @ 2019-09-12 20:07 barton123 阅读(489) 评论(0) 推荐(0)

Python之路Python文件操作
摘要:一、文件的操作 文件句柄 = open('文件路径+文件名', '模式') 例子 分析:这里由于python文件和test.txt文件在同一文件夹里,不需要写test的绝对路径 如果要写绝对路径可以这样写 文件打开模式有以下几种模式 1、文本文件的打开模式 “r” ,只读模式【默认模式,文件必须存在 阅读全文

posted @ 2019-09-12 20:06 barton123 阅读(199) 评论(0) 推荐(0)

Linux文件目录介绍及文件颜色区别
摘要:文件颜色代表含义: 蓝色表示目录; 绿色表示可执行文件; 红色表示压缩文件; 浅蓝色表示链接文件; 白色表示其他文件; 黄色是设备文件,包括block, char, fifo。 常见目录解释 Linux各种发行版的目录结构基本一致,各个目录简单介绍如下: 文件颜色代表含义: 蓝色表示目录; 绿色表示 阅读全文

posted @ 2019-09-12 20:05 barton123 阅读(872) 评论(0) 推荐(0)

如何查看linux服务器的版本和配置信息
摘要:inux下看配置,可没有windows那么直观。你只能一个一个查看。 一:cpu[root@srv /]# more /proc/cpuinfo | grep "modelname" [root@srv /]# grep "model name"/proc/cpuinfo 二:内存[root@srv 阅读全文

posted @ 2019-09-12 20:05 barton123 阅读(12286) 评论(0) 推荐(1)

Centos之文件搜索命令find
摘要:ind [搜索范围] [搜索条件] #搜索文件 find / -name install.log #避免大范围搜索,会非常耗费系统资源 #find是在系统当中搜索符合条件的文件名。如果需要匹配, 使用通配符匹配,通配符是完全匹配。 [root@localhost ~]# ls 222 anacond 阅读全文

posted @ 2019-09-12 20:04 barton123 阅读(211) 评论(0) 推荐(0)

tar命令
摘要:主选项:c 创建新的档案文件。如果用户想备份一个目录或是一些文件,就要选择这个选项。相当于打包。 x 从档案文件中释放文件。相当于拆包。 t 列出档案文件的内容,查看已经备份了哪些文件。 特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!因为不可能同时压缩与解压缩。辅助选项: -z 阅读全文

posted @ 2019-09-12 20:03 barton123 阅读(142) 评论(0) 推荐(0)

Linux系统下安装rz/sz命令及使用说明
摘要:对于经常使用Linux系统的人员来说,少不了将本地的文件上传到服务器或者从服务器上下载文件到本地,rz / sz命令很方便的帮我们实现了这个功能,但是很多Linux系统初始并没有这两个命令。今天,我们就简单的讲解一下如何安装和使用rz、sz命令。 1.软件安装 (1)编译安装 root 账号登陆后, 阅读全文

posted @ 2019-09-12 20:03 barton123 阅读(293) 评论(0) 推荐(0)

UnicodeEncodeError: 'latin-1' codec can't encode characters,python3 中文乱码
摘要:UnicodeEncodeError: 'latin-1' codec can't encode characters in position 9-13: ordinal not in range(256) 后来苦思冥想找资料,最后发现一个办法,可以解决上述问题,就是: 在下图所示处加上下面箭头所指 阅读全文

posted @ 2019-09-12 20:02 barton123 阅读(4608) 评论(0) 推荐(0)

多线程和CPU的关系
摘要:(1) Central Progressing Unit 中央处理器,是一块超大规模的集成电路,是一台计算机的运算核心和控制核心。 (2) CPU包括 运算器,高速缓冲存储器,总线。 (3) 它的工作,主要是解释计算机中的指令,和处理计算机软件中的数据。它在计算机中起着最重要的作用,构成了系统的控制 阅读全文

posted @ 2019-09-12 20:01 barton123 阅读(836) 评论(0) 推荐(0)

Linux查看端口、进程情况及kill进程
摘要:Linux查看端口、进程情况及kill进程 看端口: ps -aux | grep tomcat 发现并没有8080端口的Tomcat进程。 使用命令:netstat –apn 查看所有的进程和端口使用情况。发现下面的进程列表,其中最后一栏是PID/Program name 发现8080端口被PID 阅读全文

posted @ 2019-09-12 20:01 barton123 阅读(755) 评论(0) 推荐(0)

如何正确查看Linux机器内存使用情况
摘要:背景 只要工作上涉及到Linux机器,基本上都会有这样一个需求,查看内存使用情况,但是怎么看才正确呢?之前使用的是top命令,一直存在一个误区。 为什么top命令看内存会有误区? top是个很好用的系统分析工具,可以实时查看进程,cpu使用率,内存使用率等情况,有点像windows下的任务管理器。我 阅读全文

posted @ 2019-09-12 20:00 barton123 阅读(5088) 评论(0) 推荐(0)

Linux查看日志常用命令
摘要:1.查看日志常用命令 tail: -n 是显示行号;相当于nl命令;例子如下: tail -100f test.log 实时监控100行日志 tail -n 10 test.log 查询日志尾部最后10行的日志; tail -n +10 test.log 查询10行之后的所有日志; head: 跟t 阅读全文

posted @ 2019-09-12 19:59 barton123 阅读(6548) 评论(0) 推荐(0)

-bash: iostat: command not found解决办法
摘要:[root@testhost ~]# iostat-bash: iostat: command not found IOSTAT 命令不可用,首先确认sysstat包是否安装,sysstat包中包括iostat,mpstat,sar,sa [root@testhost ~]#yum install 阅读全文

posted @ 2019-09-12 19:57 barton123 阅读(277) 评论(0) 推荐(0)

Linux中top命令参数详解
摘要:top命令用法top命令经常用来监控linux的系统状况,是常用的性能分析工具,能够实时显示系统中各个进程的资源占用情况。 top的使用方式 top [-d number] | top [-bnp] 参数解释: -d:number代表秒数,表示top命令显示的页面更新一次的间隔。默认是5秒。 -b: 阅读全文

posted @ 2019-09-12 19:56 barton123 阅读(549) 评论(0) 推荐(0)

Linux虚拟内存的作用
摘要:要深入了解linux内存运行机制,需要知道下面提到的几个方面:首先,Linux系统会不时的进行页面交换操作,以保持尽可能多的空闲物理内存,即使并没有什么事情需要内存,Linux也会交换出暂时不用的内存页面。这可以避免等待交换所需的时间。 其次,linux进行页面交换是有条件的,不是所有页面在不用时都 阅读全文

posted @ 2019-09-12 19:56 barton123 阅读(542) 评论(0) 推荐(1)

测试工作中经常用到的一丢Linux命令
摘要:1.cd命令 用于切换目录(可以一级一级地切换,也可以一次性切换到指定目录) 2.ls命令 显示当前目录中有哪些文件 3.mkdir命令 创建目录 4.rm命令 删除文件或目录 5.cp命令 复制文件或目录 6.tar命令 可以把一堆文件或目录打包成一个文件,即可以打包、压缩、解压 7.true命令 阅读全文

posted @ 2019-09-12 19:55 barton123 阅读(245) 评论(0) 推荐(0)

linux下查看进程id时用到的命令
摘要:一、查看端口占用的进程 二、根据程序名称查询进程ID 阅读全文

posted @ 2019-09-12 19:54 barton123 阅读(2710) 评论(0) 推荐(0)

LINUX中如何查看某个端口是否被占用
摘要:之前查询端口是否被占用一直搞不明白,问了好多人,终于搞懂了,现在总结下: 1.netstat -anp |grep 端口号 如下,我以3306为例,netstat -anp |grep 3306(此处备注下,我是以普通用户操作,故加上了sudo,如果是以root用户操作,不用加sudo即可查看),如 阅读全文

posted @ 2019-09-12 19:53 barton123 阅读(248) 评论(0) 推荐(0)

转]linux awk命令详解
摘要:原文链接 : http://blog.chinaunix.net/uid-23302288-id-3785105.html awk是行处理器: 相比较屏幕处理的优点,在处理庞大文件时不会出现内存溢出或是处理缓慢的问题,通常用来格式化文本信息 awk处理过程: 依次对每一行进行处理,然后输出 awk命 阅读全文

posted @ 2019-09-12 19:52 barton123 阅读(188) 评论(0) 推荐(0)

Cookie,Session的区别
摘要:1.Cookie 存储在用户本地上即客户端的数据,用来辨别用户的身份。 如果勾选了记住我则会在C盘中保存Cookie的信息,直至Cookie设置的有效期过期 注意: (1)记录用户访问次数 (2)不可跨域名:即在各种浏览器访问的网页会存放不同服务器的Cookie (3)方法:setter,gette 阅读全文

posted @ 2019-09-12 19:50 barton123 阅读(138) 评论(0) 推荐(0)

PV、UV、IP之间的区别与联系
摘要:PV是网站分析的一个术语,用以衡量网站用户访问的网页的数量。对于广告主,PV值可预期它可以带来多少广告收入。一般来说,PV与来访者的数量成正比,但是PV并不直接决定页面的真实来访者数量,如同一个来访者通过不断的刷新页面,也可以制造出非常高的PV。 1、什么是PV值 PV(page view)即页面浏 阅读全文

posted @ 2019-09-12 19:49 barton123 阅读(215) 评论(0) 推荐(0)

Nmon的安装及使用
摘要:一、下载Nmon 根据CPU的类型选择下载相应的版本: http://nmon.sourceforge.net/pmwiki.php?n=Site.Downloadwget http://sourceforge.net/projects/nmon/files/download/nmon_x86_12 阅读全文

posted @ 2019-09-12 19:47 barton123 阅读(173) 评论(0) 推荐(0)

性能测试流程(重点)
摘要:需求调研-设计场景-制造脚本-准备环境 -了解配置-提出优化建议 压测我们都应该知道哪些: 1.压测场景,用户行为 2.压测机服务配置: 核数,可用内存,网络带宽(上传和下载速率=网络带宽/8),内网压测(没有带宽限制,就相当于与在一个屋子里干活没有门的限制),外网压测(有带宽限制) 3.应用服务器 阅读全文

posted @ 2019-09-12 19:47 barton123 阅读(314) 评论(0) 推荐(0)

CPU分几核几核的是什么意思?
摘要:CPU的几核分类其实是按照CPU的地址总线数量来分类的单核心的地址总线数量是8条双核心就是16条三核心就是24依次类推,核心的多少,只需要知道地址总线的多少,然后除以8就得出来了地址总线:地址总线 (Address Bus;又称:位址总线) 属于一种电脑总线 (一部份),是由 CPU 或有 DMA 阅读全文

posted @ 2019-09-12 19:46 barton123 阅读(2723) 评论(0) 推荐(0)

PV UV QPS 并发数
摘要:PS(Transactions Per Second):每秒事务数 QPS(Query Per Second):每秒请求数,QPS其实是衡量吞吐量的一个常用指标,就是说服务器在一秒的时间内处理了多少个请求。 并发数:并发数是指系统同时能处理的请求数量,这个也是反应了系统的负载能力。 峰值QPS: 原 阅读全文

posted @ 2019-09-12 19:45 barton123 阅读(250) 评论(0) 推荐(0)

PV、TPS、QPS是怎么计算出来的?(转载的)
摘要:QPS = req/sec = 请求数/秒 【QPS计算PV和机器的方式】 QPS统计方式 [一般使用 http_load 进行统计] QPS = 总请求数 / ( 进程总数 * 请求时间 ) QPS: 单个进程每秒请求服务器的成功次数 单台服务器每天PV计算 公式1:每天总PV = QPS * 3 阅读全文

posted @ 2019-09-12 19:44 barton123 阅读(490) 评论(0) 推荐(0)

TPS及计算方法
摘要:TPS (transaction per second)代表每秒执行的事务数量,可基于测试周期内完成的事务数量计算得出。例如,用户每分钟执行6个事务,TPS为6 / 60s = 0.10 TPS。同时我们会知道事务的响应时间(或节拍),以此例,60秒完成6个事务也同时代表每个事务的响应时间或节拍为1 阅读全文

posted @ 2019-09-12 19:43 barton123 阅读(1461) 评论(0) 推荐(0)

linux性能监控 -CPU、Memory、IO、Network等指标的讲解
摘要:一、CPU 1、良好状态指标 CPU利用率:User Time <= 70%,System Time <= 35%,User Time + System Time <= 70%。 上下文切换:与CPU利用率相关联,如果CPU利用率状态良好,大量的上下文切换也是可以接受的。 可运行队列:每个处理器的可 阅读全文

posted @ 2019-09-12 19:42 barton123 阅读(690) 评论(0) 推荐(0)

TPS和事务响应时间的关系
摘要:例子:一个高速路有10个入口,每个入口每秒钟只能进1辆车 1、请问1秒钟最多能进几辆车? TPS=10 2、每辆车需要多长时间进行响应? reponse time = 1 3、改成20辆车,每秒能进几辆?每辆车的响应时间是多长? TPS = 10,reponse time = 1 (10个为一等份, 阅读全文

posted @ 2019-09-12 19:41 barton123 阅读(337) 评论(1) 推荐(0)

导航