pythonweb⾃动化项⽬源码_python+selenuimweb前端⾃动化
框架源代码。。。
欢迎留⾔说出你遇到的问题,在线解答及提供⾃动化框架源代码。
UItestframework项⽬⽬前具有以下功能:
1、对webdriver进⾏了第⼆次的简单封装,使⽤更加⽅便 public/common/pyselenium.py
2、可以对excel表进⾏数据读取,完成数据驱动:public/common/datainfo.py
3、具有打印⽇志的功能,打印在控制台和⽂件中:public/common/log.py,⽇志保存在report/log/⽬录下
4、读取配置⽂件(.ini⽂件):public/common/readconfig.py
5、具有发邮件的功能:public/common/sendmail.py
6、⽣成测试报告:html测试报告的路径:report/testreport/⽬录下
7、使⽤了PageObject模式来编写测试脚本
整个项⽬的⽬录结构:
├─config 配置⽂件的⽬录
│ │ config.ini 存放配置⽂件
│ │ globalparam.py 重要的全局参数,如log、report的路径配置等
│ │ __init__.py
│ │
├─data 测试数据
│ ├─formaldata # 正式环境测试数据
│ └─testdata # 测试环境的数据
│ searKey.xlsx
├─public 公共的⽂件库
│ │ __init__.py
│ │
│ ├─common 封装的公共⽅法
│ │ │ basepage.py
│ │ │ datainfo.py
│ │ │ log.py
│ │ │ mytest.py
│ │ │ publicfunction.py
│ │ │ pyselenium.py
│ │ │ pyselenium20161107.py
│ │ │ readconfig.py
│ │ │ sendmail.py
│ │ │ __init__.py
│ │ │
│ │
│ ├─pages 使⽤pageobject模式编写测试脚本,存放page的⽬录
│ │ │ baiduIndexPage.py
网站源码在线│ │ │ __init__.py
├─report 测试报告
│ ├─image 截图⽬录
│ ├─log ⽇志⽬录
│ │ 2018-11-07.log
│ │
│ └─testreport html测试报告⽬录
│ TestResult2018-11-07_16_15_51.html
└─testcase 存放测试⽤例
│ test_baidu.py
使⽤说明:
安装响应的库: pip install xlrd,selenium,configparser
1、在config.ini中配置项⽬路径:project_path
2、测试数据放在data⽬录下⾯
3、使⽤pageobject,写page页⾯,在测试⽤例⾥⾯调⽤放在public/pages⽬录下
4、在testcase⽬录下⾯,编写测试⽤例,可以分模块编写,建相应的⽬录
5、执⾏run.py,就可以执⾏所有的测试⽤例
6、在report/log⾥⾯查看⽇志
7、在report/testreport⾥⾯查看html测试报告
import PySelenium
1、启动浏览器:
启动⾕歌浏览器
dr = PySelenium.PySelenium('chrom')
启动远程浏览器⽐如使⽤grid施⾏分布式执⾏
dr = PySelenium.PySelenium(RChrome','127.0.0.1:8080')
2、在地址栏输⼊⽹址:
dr.open('www.baidu')
3、窗⼝最⼤化
dr.max_window()
4、设置浏览器的窗⼝的⼤⼩
dr.set_window(800,500)
5、不清除⽂本框的内容直接输⼊值(⽐如说:进⾏⽂件上传时,上传⽂件的路径,如果清除就会报错):dr.type('id->su','⼩⽯头tester')
6、先清除⽂本框的内容,然后再输⼊值(⽤得很多):
dr.clear_type('name->su','⾍师')
7、直接点击元素
dr.click('css->#kw')
8、右键点击元素:
dr.right_click('id->kw')
9、将⿏标移动到⼀个元素上
10、双击元素
dr.double_click("id->kw")
11、将⼀个元素拖拽到另外⼀个元素上
dr.drag_and_drop('id->kw1','id->kw2')
12、根据连接的text来点击()
dr.click_text('百度')
13、关闭窗⼝,driver
dr.quit()
14、执⾏js脚本
dr.js('script')
15、获取元素的属性
<_attribute("id->su","href")
16、获取元素的⽂本信息text
<_text('id->su')
17、返回当前页⾯的title
<_title()
18、返回当前页⾯的url
<_url()
20、进⼊frame
dr.switch_to_frame('id->kw')
21、退出frame
dr.switch_to_frame_out()
22、判断元素是否存在
dr.element_exist('id->kw')
23、截图
dr.take_screenshot('file_path')
24、进⼊最新的table
dr.into_new_window()
25、输⼊内容并且回车
26、使⽤js来点击某个元素
dr.js_click('id->kw')
27、返回原⽣的webdriver,进⾏个性化需求dr.origin_driver()

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。