摘要: 简要说明Selenium Grid如何部署和测试 阅读全文
posted @ 2016-02-02 11:28 栗子测试 阅读(574) 评论(0) 推荐(0) 编辑
 
摘要: 本文将采用sqlite数据库来管理xpath及data 阅读全文
posted @ 2016-01-24 22:30 栗子测试 阅读(888) 评论(0) 推荐(0) 编辑
 
摘要: 本文详细解析了excel作为数据源的操作方法 阅读全文
posted @ 2016-01-23 18:54 栗子测试 阅读(2556) 评论(1) 推荐(1) 编辑
摘要: 本文从简单实用角度讲解log4j,并重构封装的代码。 阅读全文
posted @ 2016-01-23 12:48 栗子测试 阅读(2102) 评论(0) 推荐(0) 编辑
 
摘要: 本文从框架角度对Selenium代码进行二次封装,以便调理清晰、方便使用 阅读全文
posted @ 2016-01-17 17:57 栗子测试 阅读(4026) 评论(0) 推荐(0) 编辑
 
摘要: 本文从使用角度将上节的代码使用TestNG进行重构 阅读全文
posted @ 2016-01-16 21:56 栗子测试 阅读(967) 评论(0) 推荐(1) 编辑
摘要: 本文从实用角度简单介绍了Selenium对控件的定位及操作 阅读全文
posted @ 2016-01-16 15:11 栗子测试 阅读(1288) 评论(3) 推荐(1) 编辑
 
摘要: 一目了然的环境准备工作 阅读全文
posted @ 2016-01-15 12:41 栗子测试 阅读(1016) 评论(1) 推荐(1) 编辑
  2018年9月24日
摘要: # partial函数# 偏函数,把函数的部分参数固定下来,相当于为部分参数添加了一个固定的默认值,形成一个新的函数并返回# 从partial生成的新函数,是对原函数的封装import functoolsdef add(x, y) -> int: return x + ynewadd = funct 阅读全文
posted @ 2018-09-24 18:03 栗子测试 阅读(262) 评论(0) 推荐(0) 编辑
  2018年9月16日
摘要: # 静态语言:编译过程中会检查,会发下问题# 动态语言:只有在运行时才会发现问题# 1 由于编译期间不做任何检查,直到运行期间我呢提才会暴露# 2 函数使用者并不知道参数类型的时候,容易传错参数类型# 函数注解:给函数的形参一个类型,并有指向的return值# python3.5开始引入# 可以用于 阅读全文
posted @ 2018-09-16 23:04 栗子测试 阅读(1519) 评论(0) 推荐(0) 编辑
摘要: # 二叉树的遍历# 对二叉树中的所有元素不重复的访问一遍# 广度优先遍历# 层序遍历# 从第一层开始,没一层从左至右遍历元素# 深度优先遍历# 假设树的根节点为D,左子树为L,右子树为R,且要求L一定在R之前,则有以下遍历方式:# 前序遍历:也叫先序遍历,也叫先根遍历,DLR# 中序遍历:也叫中根遍 阅读全文
posted @ 2018-09-16 11:05 栗子测试 阅读(434) 评论(0) 推荐(0) 编辑
  2018年9月15日
摘要: # 作用:消除装饰器副作用 # functools模块# update_wrapper(wapper, wrapped, assigned=WRAPPER_ASSIGNMENTS, updated=WRAPPER_UPDATES)# 类似copy_properties功能# wrapper包装函数, 阅读全文
posted @ 2018-09-15 15:33 栗子测试 阅读(274) 评论(0) 推荐(0) 编辑
  2018年9月9日
摘要: # 装饰器 - @ - 拿到内层函数的引用 - 直接使用内层函数# 增强加法函数,输出被调用过及调用的参数def add(x, y): print("call fun {}, {}+{}".format(add.__name__, x, y)) # 输出到控制台 return x + yprint( 阅读全文
posted @ 2018-09-09 18:27 栗子测试 阅读(216) 评论(0) 推荐(0) 编辑
摘要: # 柯里化# 将原来接收两个参数的函数 变成 接收一个参数的新的函数的过程# 新的函数返回一个以原有第二个参数为参数的函数# z = f(x, y) 变成 z = f(x)(y)def add(x, y): return x + y# 通过嵌套函数可以实现柯里化def add(x): def _ad 阅读全文
posted @ 2018-09-09 11:27 栗子测试 阅读(159) 评论(0) 推荐(0) 编辑
摘要: # 高阶函数# 数学概念 y = g(f(x))# 高阶函数必须满足至少一个条件# 1 接受一个或多个函数作为参数(如:f(x))# 2 返回一个函数对象def counter(base): def inner(step = 1): # 当成本地变量来理解 nonlocal base base = 阅读全文
posted @ 2018-09-09 11:07 栗子测试 阅读(220) 评论(0) 推荐(0) 编辑
摘要: # 树# 非线性结构,每个元素可以有多个前驱和后继# 树是n个元素的集合(n>=0)# n=0时,称为空树# 树只有一个特殊的没有前驱的元素,叫做根root# 树中除了根节点外,其他元素只能有一个前驱,可以有多个后继# 递归# 树T是n个元素的集合(n>=0)。n=0时,称为空树# 有且只有一个特殊 阅读全文
posted @ 2018-09-09 11:04 栗子测试 阅读(161) 评论(0) 推荐(0) 编辑
  2018年9月8日
摘要: # 函数销毁# 全局函数销毁# 重新定义同名函数# del语句删除函数对象# 程序结束时def foo(xyz=[], u='abc', z=123): xyz.append(1) return xyzprint(id(foo))def foo(xyz=[]): xyz.append(1) retu 阅读全文
posted @ 2018-09-08 10:36 栗子测试 阅读(1224) 评论(0) 推荐(0) 编辑
  2018年8月29日
摘要: import datetimeimport time# 模块.类.方法()datetime.datetime.now()# datetime类today = datetime.datetime.today()now = datetime.datetime.now()utcnow = datetime 阅读全文
posted @ 2018-08-29 13:01 栗子测试 阅读(367) 评论(0) 推荐(0) 编辑