- 博客(31)
- 收藏
- 关注
原创 8、webdriver的get_screenshot_as_file错误截图并保存到指定文件中
#!/usr/bin/env python# coding=utf-8from selenium import webdriverimport timefrom selenium.common.exceptions import NoSuchElementExceptiondriver = webdriver.Firefox()driver.get("https://baidu....
2018-12-27 21:09:53 2043
原创 python3基础:异常处理及python常见异常类型总结
1、try...except...#!/usr/bin/env python# coding=utf-8import codecsdef get_webinfo(path): web_info = {} with codecs.open(path, 'r', 'utf-8') as config: for line in config.readlin...
2018-12-26 22:31:19 1157
原创 python3练习4:从txt或csv文件中读取数据并以字典存储返回
1、读取txt文件并返回字典文件内容如下:代码如下:#!/usr/bin/env python# coding=utf-8import codecsdef read_txt(path): txt_dict = {} with codecs.open(path, 'r', 'utf-8') as config: for line in c...
2018-12-24 22:47:54 11502 1
原创 python3基础:列表解析
列表解析是Python迭代机制的一种应用,常用于实现创建新的列表。 列表解析式简化了代码,使代码的可读性增强;编译器在内部作了优化,不会因为简写而影响效率,反而提高了效率基本语法:[expression for iter_val in iterable]练习题:生成一个列表,元素是1-9,返回这个列表元素自增1后平方的列表 [(i+1)**2 for i in range(10)]...
2018-12-24 22:46:26 1152
原创 python3基础:常见的数据格式处理方法
1、strip():用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列;返回新字符串语法:str.strip([chars]); 2、split():通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串;返回字符串列表语法:str.split(str="", num=string.count(str)) ...
2018-12-24 22:22:57 199
原创 python3基础:装饰器
装饰器本身是一个函数,使用“@”与被装饰函数连接;程序运行装饰器函数时,会先对装饰器函数从上到下解释并存到内存#!/usr/bin/env python# coding=utf-8def outer(fun): def wrapper(args0): print('Check') # 使用result变量接收原函数的返回值,并返回 ...
2018-12-23 18:47:38 117
原创 python3基础:re模块
compile:返回一个对象 match('正则表达式', '匹配目标'): 从开头开始匹配,若匹配成功则返回一个匹配结果对象,可以使用group方法获取对象中的值(只查找一个匹配结果);若开始没匹配到则直接返回一个None search('正则表达式', '匹配目标'): 从整个字符串中一直匹配直到匹配成功为止,若匹配成功则返回一个匹配结果对象 ,可以使用group方法获取对象中...
2018-12-23 17:20:53 276
原创 python3基础:MD5加密详解
#!/usr/bin/env python# coding=utf-8import hashlib# 创建加密对象m = hashlib.md5()# 更新加密对象m.update('admin'.encode('utf-8'))# 以16进制的形式返回m.hexdigest()print(m)注意:若写成m.update('admin'),则会报错“Unicode-o...
2018-12-22 23:25:24 517
原创 python3基础:random
random.random():生成0~1之间的随机数random.randint():生成闭区间内随机整数random.randrange():生成开区间内的随机数#!/usr/bin/env python# coding=utf-8# 随机生成一个大写或小写字母或数字的6位验证码import random# 定义一个列表接收字符串code = []for i i...
2018-12-22 22:35:05 618
原创 python基础:内置函数
常见内置函数:help()dir()vars()type()import tempimport tempreload(temp)id([12])#is------------------cmp(2,3)cmp(2,2)cmp(2,1)cmp(10,1)abs()bool()divmod():分页时用到max()min()...
2018-12-22 20:32:03 102
原创 python基础之yield
yield的作用就是把一个函数变成一个generator,带有yield的函数不再是一个普通函数,Python解释器会将其视为一个generatoryield的功能:1.与return类似,都可以返回值,但不一样的地方在于yield返回多次值,而return只能返回一次值;迭代一次遇到yield时就返回yield后面的值。重点是:下一次迭代时,从上一次迭代遇到的yield后面的代码开始执行...
2018-12-21 22:44:31 142
原创 JMeter性能测试9:阿里云服务器压测
一、Jmeter非GUI界面 参数讲解 讲解:非GUI界面,压测参数讲解 -h 帮助 -n 非GUI模式 -t 指定要运行的 JMeter 测试脚本文件 -l 记录结果的文件 每次运行之前,(要确保之前没有运行过,即xxx.jtl不存在,不然报错) -r Jmter.pr...
2018-12-19 22:09:15 4818
原创 Jmeter性能测试6:如何读取CSV或txt文本文件中的参数进行压测
如何读取CSV或txt文本文件中的参数进行压测?1、线程组->add -> Config Element(配置原件)-> CSV data set config (CSV数据文件设置)csv或txt中的参数引用:${参数名},比如这里是${csv_name}如果是有多个参数,需要使用“&”连接,比如:/info?name=${csv_name}&...
2018-12-12 22:03:45 3985
原创 Jmeter性能测试5:用户自定义变量
用户自定义变量:1、线程组->add -> Config Element(配置原件)-> User Definde Variable(用户定义的变量) 2、引用方式${XXX},在接口中变量中使用 3、原始查看结果树和非原生查看(基础按钮)...
2018-12-12 21:29:25 1784
原创 7、警告框处理:alertr对象
使用switch_to_alert()方法定位到alert/confirm/promptprompt:提示信息text = driver.switch_to_alert().text :返回alert/confirm/prompt中的文本信息driver.switch_to_alert().accept() :接收当前警告框driver.switch_to_alert().dismi...
2018-12-11 22:22:56 166
原创 Jmeter性能测试4:实战之压测结果聚合报告分析
新增聚合报告:线程组->添加->监听器->聚合报告(Aggregate Report) lable: sampler的名称 Samples: 一共发出去多少请求,例如10个用户,循环10次,则是 100 Average: 平均响应时间 Median: 中位数,也就是 50% 用户的响应...
2018-12-11 22:05:40 10057
原创 JMeter性能测试3:断言基本使用
1、增加断言: 线程组 -> 添加 -> 断言 -> 响应断言 apply to(应用范围): Main sample only: 仅当前父取样器 进行断言,一般一个请求,如果发一个请求会触发多个,则就有sub sample(比较少用)要测试的响应字段: 响应文本:即响应的数据,...
2018-12-11 21:43:55 1000
原创 Jmeter性能测试2:基础功能组件介绍线程组和Sampler
讲解Jmeter里面GUI菜单栏主要组件: 1、添加->threads->线程组(控制总体并发) 线程数:虚拟用户数。一个虚拟用户占用一个进程或线程 准备时长(Ramp-Up Period(in seconds)):全部线程启动的时长,比如100个线程,20秒,则表示20秒内100个线程都要启动完成,每秒启动5...
2018-12-11 20:38:29 385
原创 Jmeter性能测试1:Jmeter目录文件讲解
简介:讲解jmeter解压文件里面的各个目录,文件等 1、目录 bin:核心可执行文件,包含配置 jmeter.bat: windows启动文件: jmeter: mac或者linux启动文件: jmeter-server:mac或者Liunx分布式压测使用的启动文件 ...
2018-12-10 21:40:52 248
原创 6、python+selenium基础之多窗口和表单切换
一、多窗口切换:浏览器的句柄是表示浏览器某个窗口的唯一标识,只需要切换到对应句柄,就能打开对应的窗口页面获得当前窗口句柄 handle = driver.current_window_handle获得所有打开的窗口的句柄 all_handles = driver.window_handles切换到某个窗口 driver.switch_to.window(ha...
2018-12-08 17:20:34 319
转载 python3扩展HTMLTestRunner测试报告
原出处自:https://www.cnblogs.com/feiquan/p/8525903.html """A TestRunner for use with the Python unit testing framework. Itgenerates a HTML report to show the result at a glance.The simplest way to u...
2018-12-07 21:45:10 667
原创 练手3:unittest自动化测试框架+HTMLTestRunner测试报告
#!/usr/bin/env python# coding=utf-8# 文件名:test_case01.py# coding=utf-8import unittestfrom HTMLTestRunner import HTMLTestRunnerfrom datetime import datetimeclass TestCase01(unittest.TestCase):...
2018-12-07 20:27:22 274
原创 练手2:python3+selenium+unittest
上代码: #!/usr/bin/env python# coding=utf-8class Count: def __init__(self, a, b): self.a = int(a) self.b = int(b) def add(self): return self.a + self.bimport u...
2018-12-07 09:37:55 258
原创 常见报错3:解决Pycharm无法导入包的问题 Unresolved referenc
完美解决Pycharm无法导入包的问题 Unresolved reference:This inspection detects names that should resolve but don't. Due to dynamic dispatch and duck typing, this is possible in a limited but useful number of case...
2018-12-06 22:57:36 1178 1
原创 练手1:python3+selenium
#!/usr/bin/env python# coding=utf-8from selenium import webdriverimport timefrom selenium.webdriver.support.ui import WebDriverWaitm = webdriver.Safari()def get_ele_times(driver, times, func)...
2018-12-06 21:53:47 306
原创 4、python3+selenium之键盘事件
引入Keys模块 from selenium.webdriver.commin.keys import Keys输入框输入内容 driver.find_elment_by_id("kw").send_keys('seleniumm')删除多输入的一个m driver.find_element_by_id('kw').send_keys(Keys.BACK_SPACE...
2018-12-02 23:32:09 950 1
原创 5、python+selenium之常见鼠标事件
需要引入的类:from selenium.webdriver.common.action_chains import ActionChains常用方法:perform() 执行所有的ActionChains中的存储行为 double_click() 双击 context_click() 右击 drag_and_drop(源元素,目标元素) 拖动 m...
2018-12-02 23:30:22 165
原创 3、python3+selenium之简单元素操作
1、clear():清除文本2、send_keys():模拟按键输入3、click():点击元素4、submit():用于提交表单,相当于“回车”操作 driver.find_element_by('kw').send_keys('selenium') driver.find_element_by('kw').submit() 5、size:获取输入框尺寸...
2018-12-02 23:19:37 267
原创 2、python3+selenium之控制浏览器操作
0、打开浏览器: 打开火狐浏览器: driver = webdriver.Firefox() 打开IE浏览器: driver = webdriver.Ie() 打开Chrome浏览器: driver = webdriver.Chrome() 打开Safari浏览器: driver = webdriver.Safari()1、控制浏览器大小 dri...
2018-12-02 23:09:57 736
原创 1、python3+selenium之常见的页面元素定位方法
一、ID定位 find_elemet_by_id("")二、name定位 find_element_by_name("")三、class定位 find_element_by_class_name("")四、tag定位 find_element_by_tag_name("") 五、link定位 find_element_by_link_t...
2018-12-02 23:08:05 588
原创 常见错误2:Too broad exception clause
Too broad exception clause:捕获的异常过于宽泛了,没有针对性,可以通过指定精确的异常类型来解决
2018-12-02 19:03:53 10634
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人