会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
书院小先生
博客园
首页
新随笔
联系
订阅
管理
1
2
3
4
5
···
10
下一页
2022年6月18日
python装饰器
摘要: # 装饰器的组成 # 1.定义装饰器def time_dec() 2.获取被装饰函数(f): # 1.定义内函数def wrapper(),2,获取被装饰函数的传参(func3(1, 2, c=1)) # 1.调用函数本身,并且传参 r = f(*args, **kwargs) # 1.把装饰函数的
阅读全文
posted @ 2022-06-18 15:27 书院小先生
阅读(43)
评论(0)
推荐(0)
2022年4月3日
自动发邮件
摘要: #!/usr/bin/env python # -*- coding: utf-8 -*- # @Project : pythonProject # File : sendmail.py # @Time : 2022/4/2 22:40 # @Author : lilu """ 1,导包 2,建立连
阅读全文
posted @ 2022-04-03 16:39 书院小先生
阅读(134)
评论(0)
推荐(0)
2022年2月11日
sql优化的几种方法
摘要: 1、在表中建立索引,优先考虑where、group by使用到的字段。 2、尽量避免使用select *,返回无用的字段会降低查询效率。如下: SELECT * FROM t 优化方式:使用具体的字段代替*,只返回使用到的字段。 3、尽量避免使用in 和not in,会导致数据库引擎放弃索引进行全表
阅读全文
posted @ 2022-02-11 17:34 书院小先生
阅读(8324)
评论(0)
推荐(0)
2022年2月9日
自动化中有哪三类等待?他们有什么特点?
摘要: 1.线程等待(强制等待)如time.sleep(2):线程强制休眠2秒钟,2秒过后,再执行后续的代码。建议少用。2. imlicitlyWait(隐式等待)会在指定的时间范围内不断的查找元素,直到找到元素或超时,特点是必须等待整个页面加载完成。3. WebDriverWait(显式等待)通常是我们自
阅读全文
posted @ 2022-02-09 18:04 书院小先生
阅读(343)
评论(0)
推荐(0)
深拷贝和浅拷贝的区别是什么?
摘要: 深拷贝是将对象本身复制给另一个对象。这意味着如果对对象的副本进行更改时不会影响原对象。在 Python 中,我们使用 deepcopy()函数进行深拷贝,深拷贝的话,是深层拷贝,拷贝的是对象本身,也就是说会存在两个对象【1,2,3】深拷贝的目的是需要改变原始对象中的数据,但是又要保留原来的那一份所以
阅读全文
posted @ 2022-02-09 18:03 书院小先生
阅读(459)
评论(0)
推荐(0)
什么是PO模式
摘要: PO是Page Object模式的简称,它是一种设计思想,意思是,把一个页面,当做一个对象,页面的元素和元素之间操作方法就是页面对象的属性和行为,PO模式一般使用三层架构,分别为:基础封装层BasePage,PO页面对象层,TestCase测试用例层。
阅读全文
posted @ 2022-02-09 18:03 书院小先生
阅读(689)
评论(0)
推荐(0)
Python的魔法方法是什么?__new__和__init__的区别是什么?
摘要: Python中的魔法方法是指可以给我们的类增加魔力的特殊方法。如果对象实现(重载)了这些方法中的某一个,那么这个方法就会在特殊的情况下被调用。它们经常是双下划线包围来命名的(比如:__init__)。__new__:用来创建一个雷的实例(constructor)。__init__:用来初始化一个实例
阅读全文
posted @ 2022-02-09 18:02 书院小先生
阅读(76)
评论(0)
推荐(0)
selenium中如何保证操作元素的成功率?也就是说如何保证我点击的元素一定是可以点击的?
摘要: 1.首先通过封装find方法,实现wait_for_element_ispresent(WebDriverWait)2.在对页面进行click之前,先滚动到该元素(通过Js封装),避免在页面未加载完成前或是在下拉之后才能显示。3.不同方式进行定位,与expected_conditions判断方法封装
阅读全文
posted @ 2022-02-09 18:01 书院小先生
阅读(184)
评论(0)
推荐(0)
Python 中如何实现多线程?
摘要: 多线程类似于同时执行多个不同程序;Python中使用线程有两种方式:函数或者用类来包装线程对象。函数式:调用thread模块中的start_new_thread()函数来产生新线程,语法: thread.start_new_thread ( function, args[, kwargs] ),其中
阅读全文
posted @ 2022-02-09 18:01 书院小先生
阅读(2008)
评论(0)
推荐(0)
用例在运行过程中经常会出现不稳定的情况,也就是说这次可以通过,下次就没办法通过了,如何去提升用例的稳定性?
摘要: 1.在经常检测失败的元素前尽量加上显式等待时间,等要操作的元素出现之后再执行下面的操作;2.多线程的时候,减少测试用例耦合度,因为多线程的执行顺序是不受控制的;3.多用 try 捕捉,处理异常;4.尽量使用测试专用环境,避免其他类型的测试同时进行,对数据造成干扰。
阅读全文
posted @ 2022-02-09 17:59 书院小先生
阅读(478)
评论(0)
推荐(0)
1
2
3
4
5
···
10
下一页
公告