找回密码
 立即注册

推荐阅读

  • 便民服务
  • 关注我们
  • 社区新手
UI自动化:并不是测试页面ui,而是跑页面功能

使用selenium的优点
1、工具免费
2、安装简单,小巧,selenium其实就是一个包
3、支持多语言(java,python)+selenium完成自动化测试
4、支持多平台(Windows,linux)
5、支持多浏览器(ie,firefox,chrome)

selenium原理:通过selenium种的webdriver以及浏览器驱动取驱动浏览器捕捉页面元素进行操作元素,从而达到模拟人工操作的效果

ui自动化的优点:
1、解决重复性功能测试和验证
2、减少冒烟测试,回归测试的人力成本,节省时间提高测试效率
3、减少测试人员在回归测试是用例漏测和验证点的漏洞

什么样的项目适合做自动化测试:
1、项目周期较长
2、项目版本稳定

自动化测试一般在什么阶段开始实施:
1、自动化脚本在什么阶段输出
   产品验收通过或者项目版本你上线后
2、脚本执行在什么时候开始执行
  冒烟测试---覆盖原有功能
  回归阶段---包括bug验证上线

自动化如何进行开展工作:
1、熟悉业务需求,筛选除需要实现自动化测试的业务需求
2、筛选出业务需求的自动化场景,及找出这些场景的功能测试用例
3、选取自动化测试工具(selenium/robotframework)
    ①--根据当前团队成员的熟悉程度
     ②--选取主流的框架
4、自动化测试框架设计搭建
5、自动化测试用例的输出及执行和维护

为什么要实现窗口最大化:
  为了元素定位的时候更加准确,防止元素折叠导致元素定位不到代码出现异常
优先级:
id定位------尽可能使用,第一选择
name定位-----第2选择
class定位------第三选择
xpath定位------第四选择
css定位------第五选择
link_text定位
partial_link_text定位
tag_name定位
javaScript定位


  1. from selenium import webdriver   #导入selenium库引用wendriver
  2. import time #导入时间模块
  3. driver =webdriver.Chrome() #通过webdriver 调用chrome浏览器,生成一个浏览器对象
  4. driver.get('http://www.baidu.com') #通过浏览器对象调用get方式打开测试地址
  5. time.sleep(2)  #强制等待2秒
  6. driver.maximize_window()  #实现窗口最大化显示
复制代码
id定位------尽可能使用,第一选择
  1. # driver.find_element_by_id('kw').send_keys('python')
  2. # a=driver.find_element_by_id('kw')
  3. # a.send_keys('python')
复制代码
name定位-----第2选择
  1. driver.find_element_by_name('wd').send_keys('武汉多测师')
复制代码
class定位------第三选择
  1. driver.find_element_by_class_name('s_ipt').send_keys('linux')
复制代码
xpath定位------第四选择
  1. #xpath绝对路径写法
  2. driver.find_element_by_xpath('html/body/div[1]/div[1]/div[5]/div/div/form/span[1]/input').send_keys('武汉多测师')
  3. #xpath相对路径写法--两个//表示相对路径,* 表示通配符,匹配任意的标签名
  4. driver.find_element_by_xpath('//*[@id="kw"]').send_keys('武汉多测师')
  5. #xpath 层级定位/父级定位
  6. driver.find_element_by_xpath('//*[@id="form"]/span[1]/input').send_keys('武汉多测师')
复制代码
css定位------第五选择
  1. #css定位  #表示id,.表示class
  2. driver.find_element_by_css_selector('#kw').send_keys('武汉多测师')
  3. driver.find_element_by_css_selector('.s_ipt').send_keys('武汉多测师')
复制代码
link_text定位
  1. # link_text定位方法,用于定位连接
  2. driver.find_element_by_link_text('hao123').click()
  3. # partial_link_text定位方法,用于定位部分连接文本(连续部分)
  4. driver.find_element_by_partial_link_text('123').click()
复制代码
tag_name定位  
  1. # tag_name定位方法  标签名定位方法
  2. s=driver.find_elements_by_tag_name('input')  #定位所有的input标签
  3. for i in s:
  4. if i.get_attribute('id')=='kw':  #当i这个属性的值为'kw'
  5. i.send_keys('多测师')
复制代码
javaScript定位
  1. # js="document.getElementById('kw').value='selenium'"
  2. # driver.execute_script(js)    #通过execute——script执行js脚本
复制代码


分享至 : QQ空间
收藏

0 个回复

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