找回密码
 立即注册

推荐阅读

  • 便民服务
  • 关注我们
  • 社区新手

多测师学习课程内容:RF自动化(第4天)

[复制链接]
1、selenium 1.0
selenium IDE  firefox的一个插件,可以录制和回放脚本。
selenium Grid  用于实现分布式测试。利用Grid,可以很方便地同时在多台机器上和异构环境中并行运行多个测试用例。
selenium RC  selenium 的核心部分,可以实现利用selenium的代理服务器来实现访问浏览器实现自动化测试。
Client  client实现自动化脚本
Selenium Server负责控制浏览器行为
Launcher:启动浏览器
Http Proxy:selenium Server的Http代理
Core:嵌入到浏览器的js代码
2、Selenium是一个Web应用程序和开源的UI自动化测试工具
3、Selenium 2.0 又名 WebDriver,它的主要新功能是集成了 Selenium 1.0 以及 WebDriver。
也就是说 Selenium 2 是 Selenium 和 WebDriver 两个项目的合并,即 Selenium 2 兼容 Selenium。
4、webdriver自动化的工作原理:webdriver -->调用指定浏览器-->浏览器调用对应的驱动-->
对应驱动打开对应的浏览器-->再通过页面的元素定位方式操作浏览器

javascripts
组成部分:
BOM browser object model 浏览器对象模型
DOM document object model 文档对象模型
ECMAscript
你们后台的开发框架是什么?
java后台开发:
SSM  spring + springmvc +mybaits(数据的封装)
SSH  sprint + springmvc +hibernate
springboot
fianl 极速开发框架
maven 项目  pom.xml文件 --中央仓库
python后台开发框架:
Django flask
前端开发语言:
JavaScript+css+html    bootstrap框架     常用库:jquery简称JQ  ES6/ES7
php


pacharm 创建文件名不能和下载的第三方库名称一致:如果相同。系统会不知道你引入的是第三方库还是创建的.py文件会报错
from selenium import webdriver #在selenium库中导入webdriver类
driver.get() 通过对象的get方式打开浏览器
driver.maximize_window()#浏览器最大化
driver.find_element_by_id().send_keys()  通过id方法定位元素值为id的输入框然后在输入框中输入内容
driver.find_element_by_name().send_keys() 通过name进行定位
driver.find_element_by_class_name().send_keys() 通过class进行定位
driver.find_element_by_link_text().send_keys()  精确定位
driver.find_element_by_partial_link_text().send_keys() 模糊匹配
js="document.getElementById().value=' '"
driver.execute_script(js) 通过js定位 javascript  execute_script方法可以用来执行脚本文件
driver.find_element_by_xpath(''']').send_keys('')通过xpath进行定位
driver.find_element_by_css_selector('#').send_keys() 通过css进行定位#1、选择一个复选框
# driver.find_element_by_xpath('//*[@id="c1"]').click()
#2、选择所有的复选框
# 把定位带的元素赋值给一个变量(type ‘list’
# s=driver.find_elements_by_xpath('//*[@type="checkbox"]')
# print type(s)
# for i in s:
#     i.click()
#     sleep(1)
#取消所有的复选框
# for j in s:
#     j.click()
#     sleep(1)
#取消指定的复选框
#pop()指定取消最后一个;索引位0是表示第一个 -1表示最后一个
# driver.find_elements_by_css_selector("[type=checkbox]")[0].click()
# driver.find_elements_by_css_selector("[type=checkbox]").pop().click()
#
# 3、单选框
# driver.find_element_by_xpath('//*[@id="boy"]').click()
#判断选择框状态 is selected():判断元素是否选中状态
# s=driver.find_element_by_id('boy')#初始值
# sleep(10)
# if s.is_selected():
#     driver.find_element_by_id('girl').click()
# else:
#     driver.find_element_by_id('boy').click()

driver=webdriver.Chrome()
url='https://www.baidu.com'
driver.get(url)
#隐藏框和鼠标移动
#第一种放法(弊端:当点击设置元素时页面如果进行跳转我们元素就会定位不到)
# driver.find_element_by_link_text('设置').click()
# driver.find_element_by_link_text('搜索设置').click()
#第二种方法
#定位到的设置元素然后赋值给到s变量
s=driver.find_element_by_link_text('设置')
#把鼠标移动到设置者文本框上
ActionChains(driver).move_to_element(s).perform()
sleep(3)
driver.find_element_by_link_text('搜索设置').click()
#定位下拉框
sleep(1)
y=driver.find_element_by_xpath('//*[@id="nr"]')#定位到下拉框元素
#第一种方法:通过索引进行定位
# Select(y).select_by_index(1)
# driver.find_element_by_link_text('保存设置').click()
#第二种方法:通过values值进行定位
# Select(y).select_by_value('50')
# driver.find_element_by_link_text('保存设置').click()
#第三种方法:通过value文本值定位
# Select(y).select_by_visible_text('每页显示20')
# driver.find_element_by_link_text('保存设置').click()
#第四种方法:通过最基本的元素进行定位
driver.find_element_by_xpath('//*[@id="nr"]/option[3]').click()
driver.find_element_by_link_text('保存设置').click()
#alert弹窗的处理方式:切换到alert弹窗位置
d=driver.switch_to_alert()
print d.text#打印的结果为弹窗上面的提示内容
d.accept()#点击alert弹窗上面的确认按钮d.dismiss()#点击弹窗上面的取消按钮

分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册