自动化测试
基于selenium的自动化测试
striver_dl
墨者看遍天下皆是丹青,测试看尽万物皆是bug
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
向excel中写数据的python代码
①首先需要安装xlwt插件安装语句:pip install xlwt②python代码import xlwt'''调用xlwt模块中的Workbook方法来创建一个excel表格类型文件,编码类型为utf-8'''book = xlwt.Workbook(encoding='utf-8')'''用book对象调用add_sheet方法来建立一张sheet表,这里面的参数是设置sheet表格的名称'''sheet = book.add_sheet('测试文档')'''用一个元组col原创 2022-05-10 10:54:33 · 694 阅读 · 0 评论 -
python连接oracle
①首先查看数据库服务端的版本:查询的SQL:SELECT * FROM V$VERSION②安装客户端根据服务端的位数版本安装客户端我本地安装客户端的地址为:D:\PLSQL\instantclient_11_2\instantclient_11_2③python安装cx_Oraclel命令:pip install cx_Oraclel④连接数据的代码点击查看代码import osimport cx_Oracle as cx #导入模块'''之所以加os.environ原创 2022-05-09 17:26:46 · 1272 阅读 · 0 评论 -
requests提供的get方法,有几个常用的参数
requests提供的get方法,有几个常用的参数:url:显而易见,就是接口的地址url啦headers:定制请求头(headers),例如:content-type = application/x-www-form-urlencodedparams:用于传递测试接口所要用的参数,这里我们用python中的字典形式(key:value)进行参数的传递。post请求这个参数为datatimeout:设置接口连接的最大时间(超过该时间会抛出超时错误)...原创 2022-05-05 08:49:40 · 2079 阅读 · 0 评论 -
requests返回值
返回值的操作。text:获取接口返回值的文本格式json():获取接口返回值的json()格式status_code:返回状态码(成功为:200)headers:返回完整的请求头信息(headers[‘name’]:返回指定的headers内容)encoding:返回字符编码格式url:返回接口的完整url地址...原创 2022-05-05 08:49:18 · 1368 阅读 · 0 评论 -
ddt方法介绍
import unittestfrom ddt import ddt,data,unpackfrom src.utils.ReadExcel import ReadExcel@ddtclass Testddt2(unittest.TestCase): def setUp(self): pass ''' *的作用类似于将原始数据的最外层括号拿掉,例如我们的原始数据是: [['123456', 111], ['111', 'aaa'], ['1234原创 2022-05-05 08:48:42 · 396 阅读 · 0 评论 -
从excel中读取数据的python代码
#coding:utf-8import osimport xlrdfrom common.path import dataPath from common.setlog import logclass ReadExcel(object): def __init__(self,fileName,sheetName): try: self.dataFile = os.path.join(dataPath, fileName) self.wor原创 2022-05-05 08:48:00 · 1989 阅读 · 4 评论 -
关键字驱动和数据驱动
首先有一点大家自己要知道,一个简单的东西非得说来别人听不懂,来显得自己的高大上,不管哪个行业多是如此。只要自己搞懂了,自己也变成了那部分人。什么叫做数据驱动?答:所谓数据驱动就是同一段代码,参数一样,但是函数内部做了处理,所以输入不同的数据(值),得到不同的结果。比如果输入一个名字,你输入张三得到的结果是帅哥,你输入小雨得到的结果是美女,那这个就是数据驱动,就这么简单,代码还是最开始写的代码并有什么改变,只是输入值不一样结果也不一样,代码内部有分支选择而已什么叫做关键字驱动?答:所谓关键字驱动就是将原创 2022-05-05 08:47:27 · 1404 阅读 · 0 评论 -
元素的操作的简谈
(1)定位元素元素的操作分以下几种①定位元素是按钮,比如“查询”、“下一步”、“百度一下”等,这类元素一般搭配click()②定位元素是输入框,比如“输入查询的内容”、“输入密码”、“输入用户名”等,这类元素一般搭配send_keys()③定位元素是文本信息,比如“密码错误”、“用户不存在”、“输入错误”,这类元素一般就是搭配.text,用于提取文本信息用于断言(2)元素难以定位①因为有iframe,这种我们一般采用switch_to_frame(元素定位)②元素属于悬浮菜单只有把鼠标放到对应的原创 2022-05-04 23:48:51 · 228 阅读 · 0 评论 -
时间控件的操作
在使用日期控件通过点击选择日期时,如果涉及到年份和月份的更改,往往需要多次的点击翻页,操作十分麻烦。此时可以通过手工操作,了解输入框日期的输入格式,然后一次其只读属性,按相应格式直接输入需要选择的日期,代码如下。**from selenium import webdriverfrom time import sleepdriver = webdriver.Chrome()driver.get('http://www.miniui.com/demo/datepicker/datepicker.html原创 2022-05-04 23:47:55 · 955 阅读 · 0 评论 -
eclipse代码编辑界面代码块收缩的实现
1、下载插件 com.cb.eclipse.folding_1.0.6.jar 下载地址:http://files.cnblogs.com/haiq/代码折叠插件_com.cb.eclipse.folding_1.0.6.rar 2、把下载的com.cb.eclipse.folding_1.0.6.jar放到eclipse\plugins目录,重启eclipse3、因为我用的是pydev,所以重启eclipse后,就可以收缩代码块了4、快捷键:全部收缩:ctrl+/,全部展开:ctrl+*,编辑原创 2020-12-28 16:03:15 · 2247 阅读 · 0 评论 -
元素的操作的简谈
(1)定位元素元素的操作分以下几种①定位元素是按钮,比如“查询”、“下一步”、“百度一下”等,这类元素一般搭配click()②定位元素是输入框,比如“输入查询的内容”、“输入密码”、“输入用户名”等,这类元素一般搭配send_keys()③定位元素是文本信息,比如“密码错误”、“用户不存在”、“输入错误”,这类元素一般就是搭配.text,用于提取文本信息用于断言(2)元素难以定位①因为有iframe,这种我们一般采用switch_to_frame(元素定位)②元素属于悬浮菜单只有把鼠标放到对应的原创 2020-12-28 16:00:07 · 252 阅读 · 0 评论 -
自动化测试框架是什么?
包含自动化测试用例编写、自动化测试用例执行、自动化测试报告生成、日志、邮件、配置文件等组成的一套项目,就可以叫做自动化框架,我们后面只需要按照框架里的要求,增加用例即可,这就是自动化测试框架...原创 2020-12-27 10:26:26 · 336 阅读 · 0 评论 -
python中日志输出重复的解决办法
#coding:utf-8import loggingdef log(): #创建logger,如果参数为空则返回root logger logger = logging.getLogger() #定义一个logger(日志器提供应用程序提供接口) logger.setLevel(logging.ERROR ) #设置logger日志等级 # 判断logger是否已经添加过handler,是则直接返回logger对象,否则执行handler设定以及a原创 2020-12-27 10:25:25 · 1055 阅读 · 1 评论 -
截图方法get_screenshot_as_file()注意点
def img_screenshot(self,Image_name): try: self.driver.get_screenshot_as_file('D:\\workspace\\thinksns\\result\\screenshot\\fail\\'+Image_name+'.jpg') except: self.log.error(u'截图失败:')get_screenshot_as_file()如上述代码所示,截图保存的路径必须为绝对路径,如果上原创 2020-12-27 10:24:20 · 2246 阅读 · 1 评论 -
悬浮元素定位方法(谷歌浏览器)
都是采用暂停页面,从而进行元素定位,下面介绍2种暂停页面的方法方法一:第一步:F12>>选择sources第二步:按“ctrl+\”键暂停悬浮页面方法二:解决方法二:先按下F12在按下F8如果上述2者都不行,就重启电脑后再试...原创 2020-12-27 10:21:57 · 2713 阅读 · 0 评论 -
python中smtp的账号和密码设置
python中使用smtp发送邮件是需要开通的,而不是胡乱填一个那样是无法使用smtp发送邮件的,比如我们想用自己的QQ邮箱作为smtp账户进行邮件发送,那么我就需要在QQ邮箱中进行设置,设置好会有一个授权权码这个会作为smtp的登录密码,用户名就是QQ邮箱号,具体设置参考下面链接https://jingyan.baidu.com/article/c85b7a64be9284003bac9535.html...原创 2020-12-27 10:18:35 · 1227 阅读 · 0 评论 -
eclipse目录中不显示输出的文件的解决办法
问题描述:当我们在eclipse的目录中新建一个文件夹,比如说log文件,我们想把对应程序生成的日志文件输入其中并展现出来,方便查看,但现在是盘目录里能找到对应的日志文件,但是eclipse界面不显示解决办法:点击这个选项一下即可显示(刷新)...原创 2020-12-27 10:15:27 · 1575 阅读 · 0 评论 -
自动化测试基础知识--项目
(1)什么是自动化?答:自动化就是利用代码代替手工操作,并不是大家想的自动化无所不能,相反自动化局限性很强,做的事很有限,但是我们为什么还要写自动化呢?这样来说吧,手动操作登录界面,重复操作几遍还行,但是要是100遍,1000遍呢?是不是感觉没有必要,浪费人力物力,但是要是有一个自动化的代码一个完整的自动化环境,设置好,到点代码自动运行,运行完后把结果发到邮箱,这样一来我们就看看邮箱的测试结果即可,这样是不是很棒呢?(2)自动化的框架答:不同的公司,不同的框架,自动化的实现都是不一样的,但是呢?管它黑原创 2020-12-27 10:13:18 · 220 阅读 · 0 评论 -
自动化测试PO模式的设计思路
(1)PO模式的设计思路答:PO模式不是从basepage(定义基本方法)开始写,写到page(元素定位页),写到最后的测试用例页面(对元素的具体操作)而是反过来分析的,最后我的测试页面需要做什么操作,那么的page需要给我提供对应得元素定位,那元素定位需要basepage给我提供什么方法,这样一步步的完善,先把几个界面的框架搭起来,慢慢的一步步的填东西进去就是了。(2)记不住框架或是某一关键字、函数就是不会写代码吗?答:写代码不是背书,每一段代码都是不断调式最终才定型的,所以写代码是无需因为记不得某原创 2020-12-27 10:11:32 · 536 阅读 · 1 评论 -
Wampserver安装配置以及常见问题汇总
配置(1)下载并配置Wampserver简介:Wampserver指的是Windows+Apache+mysql(mariaDB)+PHP服务器为一体的平台,安装它一个就相当于安装四个,非常的适用,下载地址https://www.onlinedown.net/soft/82112.htm注意事项:①需要启动apache、mariaDB、mysql、选择php版本(不要选最高的版本,不然加载网页时会出现空白页),启动项为灰色的时候先点击安装然后再点击启动、一般表是放在mariaDB里的并非mysql原创 2020-12-27 09:52:15 · 672 阅读 · 0 评论 -
基于python自动化测试代码遇到的错误记录
(1)提示TypeError: XXXX() takes no arguments这里XXXX是你的类名,提示这个错误时我们就需要去检查一下我们的初始化函数__init__()是否写错了,因为初始化函数是由前面2个英文下划+init+后面2个英文下划线组成,否则就会出现上面的那个错误,很多时候没注意就输为一个下划线了(2)提示TypeError: module() takes at most 2 arguments (3 given)原因:我们的module名字与类名字一样了,有时就会出现这个问题,我原创 2020-07-18 22:43:29 · 1202 阅读 · 0 评论 -
python项目目录下_init_.py的作用
一、文件结构checkpointdata/ init.py dataset .py get_data.pymodels/ init.py shuffleNetV2 .py ResNet .pyutils/ init.pyconfig .pymain .pyrequirement.txtREADME .md二、作用inti.py作用这个文件在每个目录是必须存在的,如果目录有了该文件,目录相当于一个包package。在main.py中,应用 d原创 2020-07-18 19:54:57 · 1399 阅读 · 0 评论 -
自动化测试之异常详解(含代码演示)
什么是异常?Python 用异常对象(exception object)来表示异常情况。遇到错误后,会引发异常。如果异常对象并未被处理或捕捉,程序就会用所谓的 回溯(Traceback, 一种错误信息)终止执行。常见异常类型①AssertionError assert 语句失败②AttributeError 试图访问一个对象没有属性③IOError 输入输出异常,试图打一个不存的文件(包...原创 2020-05-02 09:10:22 · 1363 阅读 · 0 评论 -
自动化测试之断言详解(含代码演示)
断言的概念基于selenium+python的自动化测试,断言assert(unittest 框架的 TestCase 类提供)。断言执行失败则会抛出一个异常,此时没有达到我们预期结果,那么我们测试用例就是失败的,我们断言是要我们到达我们的期望值的。说白了,断言就是比较我们的期望结果与实际结果。相等则测试用例通过。try: assertIn("百度一下" ,driver.title) pr...原创 2020-05-02 08:55:10 · 10089 阅读 · 1 评论 -
自动化测试中怎么读取文档实现数据驱动详解
**file_info = open(‘info.txt’,‘r’),括号里面前者为文档所在的路径,如果放在电脑中采用绝对路径,当然也可以用相对路径打开,如./info.txt,./为当前路径,open()为python等编程语言的通用函数读取 txt 文件①read() 读取整个文件②readline() 读取一行数据。③readlines() 读取所有行的数据,以数组的形式进行存放...原创 2020-05-02 08:42:16 · 531 阅读 · 0 评论 -
自动化测试中文档打开方式--r系列、w系列、a系列详解
读取文档的函数用open()函数打开文档时,打开方式选择,只是赋予文档属性,并不是读取文档内容例:file_info = open(‘info.txt’,‘r’),下面将介绍用不同的打开方式r系列确定要打开的文件已存在,如果不存在会报错。只读文本文件用r只读非文本文件(图片等)用rb要既读又写在后边添个+号增加权限, 用r+ 或者 rb+r系列详谈:r :以只读方式打开文件。文件...原创 2020-05-02 08:35:11 · 649 阅读 · 0 评论 -
selenium自动化测试基础知识点(全)
元素的定位的8种方法①id②name③class name④tag name⑤link text⑥partial link text⑦xpath⑧CSS如果实在不知道怎么通过上述8个类型去定位,那么可以再在火狐浏览器47版本及以下装一个firebug和Xpath来快速的获取元素的定位基本语法:find_element_by_xpath("//input[@id=‘kw’]")...原创 2020-05-02 08:23:29 · 928 阅读 · 0 评论 -
unittest 单元测试框架的组成以及一个基于unittest框架的测试案例
unittest 单元测试框架的四大组成部分test case一个 TestCase 的实例就是一个测试用例。什么是测试用例呢?就是一个完整的测试流程,包括测试前准备环境的搭建(setUp),实现测试过程的代码(run),以及测试后环境的还原(tearDown)。元测试(unittest)的本质也就在这里,一个测试用例是一个完整的测试单元,通过运行这个测试单元,可以对某一个功能进行验证。te...原创 2020-04-22 22:30:03 · 1609 阅读 · 0 评论 -
HTMLTestRunner生成的测试报告为空且用python run 执行程序时报错问题的解决办法
前言(1)首先我们要知道HTMLTestRunner是什么用来做什么的。HTMLTestRunner说白了就是一个.py文件,我们安装的python是没有自带的,需要我们手动下载来放到python的库里。放进去以后我们就可以通过这个文件来生成我们的自动化测试报告。(2)其次我们要知道用python unit-test执行程序时是不执行HTMLTestRunner生成测试报告的,要生成测试报告可...原创 2020-04-22 22:10:47 · 1688 阅读 · 0 评论 -
eclipse的字体、背景界面设置
设置内容:(1)设置字体及大小(2)设置背景颜色(3)设置代码颜色(4)设置代码格式(防止打开的代码出现乱码)(5)设置完成以后的效果图(1)设置字体及大小设置字体及大小操作路径:window>preferences>General>appearance>Colors and Fonts,按照这个步骤设置好后,点击apply and close应用并将当前窗...原创 2020-04-22 21:29:26 · 2870 阅读 · 0 评论 -
eclipse中编写的python代码总是提示'Bad Indentation'的解决办法
我们用eclipse写代码时会发现每行代码的前面都存在一个黄颜色带感叹号的标志,鼠标放上去提示的是提示’Bad Indentation…’,虽然不影响代码的运行,但就这一点总让人感觉不舒服。(一)具体的处理办法在eclipse中按照下面的操作进行设置即可:window > preferences > pydev > editor > tabs> tab len...原创 2020-04-22 21:02:25 · 1769 阅读 · 0 评论 -
selenium自动化测试环境搭建(selenium+python+eclipse)
最近我搭建了一个自动化测试环境在网上看了许多资料,发现乱七八糟的,所以我决定自己写一篇关于自动化测试环境搭建的文章,只要看了这篇文章保证你能快速的搭建起一个完整的自动化测试环境...原创 2019-02-05 13:23:37 · 385 阅读 · 1 评论
分享