从这周开始学习自动化测试,采用selenium2,目标是在本月学习到appium,并测试公司的真实APP项目。

系统环境:win10

语言:python3.6.4

工具:selenium2

IDE:python IDLE

浏览器(需下载相对应的webdriver):

IE11

Chrome65.0.3325.146

Firefox58

  • Windows下载安装python

基础书籍是虫师的selenium2自动化测试实战(基于python语言)。

下载了python3.6.4,https://www.python.org/

在安装python的时候一定要自定义,然后选择add path,否则需要手工添加环境变量

安装好后,打开cmd,输入 python,显示版本情况,说明安装成功。

python3.6.4已经默认安装了pip,在cmd中使用pip install selenium安装selenium。

  • webdriver驱动下载

原文链接:https://www.cnblogs.com/feiquan/p/8531686.html

IE11的Webdriver下载:

  http://dl.pconline.com.cn/download/771640-1.html

  链接:https://pan.baidu.com/s/13TTyXGNaG5cpSNdl1k9ksQ 密码:2n9n

Chrome65.0.3325.146的webdriver驱动下载:

  链接:https://pan.baidu.com/s/1gv-ATOv_XdaUEThQd5-QtA 密码:dzh2

  多版本:http://chromedriver.storage.googleapis.com/index.html

Firefox58的webdriver驱动下载

  链接:https://pan.baidu.com/s/1RATs8y-9Vige0IxcKdn83w 密码:l41g

将驱动放到安装目录下的scripts文件夹下,我的路径是C:\Python\Python36\Scripts

  • 测试代码:打开浏览器,跳转百度,搜索selenium2
# conding=unicode
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import sys #加载
#driver = webdriver.Firefox()
driver = webdriver.Chrome()
#driver = webdriver.Ie() #打开百度
driver.get("http://www.baidu.com") #搜索Selenium2 try:
kw = driver.find_element_by_id("kw")
su = driver.find_element_by_id("su") except:
print ('element does not exist') print("kw is " , kw.is_enabled() ) #判断元素是否有效 assert "百度" in driver.title
kw.send_keys('selenium2') su.click() #退出
#driver.quit()
  • geckodriver

使用以上代码,火狐毫无问题

  • IEDriverServer 报错

driver = webdriver.Ie()
driver.get("http://www.baidu.com")
以上代码报This is the initial start page for the WebDriver server
解决方法:将ie浏览器安全下所有选项的“启动保护模式”全部不勾选

接着又碰到一个错误:Unexpected error launching Internet Explorer. Browser zoom level was set to 200%. It should be set to 100%

调整IE右下角的缩放比就好了,回到100%才行,真坑

解决方案原文:http://blog.csdn.net/funi16/article/details/9036753

以上问题解决后,接下去的代码正常打开,无问题

  • chromeDriver 报错

使用以上代码只能打开百度窗口,但是在kw.send_keys时却报错。

至今没有解决。不知道有没有人遇到,无语了。

selenium2自动化测试学习笔记(一)的更多相关文章

  1. selenium2自动化测试学习笔记(五)-参数化编程,自动登陆网易QQ邮箱

    学习python下使用selenium2自动测试第6天,参数化编程这节课花了两天时间. 本次编程主要时间是花在熟悉python上 知识点or坑点: 1.读取txt.xml.csv等文件存储的账号.密码 ...

  2. selenium2自动化测试学习笔记(四)

    今天是学习selenium2第四天.总结下今天的学习成果,自动登录网易邮箱并写信发送邮件. 知识点or坑点: 1.模块化编写测试模块(类似java里的抽象方法,js的函数编写) from 包名 imp ...

  3. selenium2自动化测试学习笔记(三)

    今天是学习selenium的第三天,今天的主题是自动登录126邮箱. 今天总结碰到的坑有三个: 1.frame内元素抓取,使用driver.switch_to.frame(frameId)方法切换锁定 ...

  4. selenium2自动化测试学习笔记(二)

    chromedriver报错问题解决了,真是无语 是因为chromedriver与浏览器版本不一致 http://chromedriver.storage.googleapis.com/index.h ...

  5. python自动化测试学习笔记-10YAML

    之前学习的编写测试用例的方法,都是从excel中编写接口的测试用例,然后通过读取excel文件进行接口自动化测试,这种方式我们叫做数据驱动的方式,由于excel操作起来不灵活,无法实现关联关系的接口测 ...

  6. python自动化测试学习笔记-1

    一.什么是自动化 自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程.直白的就是为了节省人力.时间或硬件资源,提高测试效率,便引入了通过软件或程序自动化执行测试用例进行测试: 二.python ...

  7. Robot Framework与Web界面自动化测试学习笔记:定位到新窗口

    在页面操作中,有时会需要打开新的窗口(新的网页不在当前窗口显示,而是在新的tab页显示), 比如利用  window.open("newurl") 或者  <a href=& ...

  8. Robot Framework与Web界面自动化测试学习笔记:简单例子

    假设环境已经搭建好了.这里用RIDE( Robot Framework Test Data Editor)工具来编写用例.下面我们对Robot Framework简称rf. 我们先考虑下一个最基本的登 ...

  9. ios UI自动化测试学习笔记

    一.一些注意事项: 1.做自动化测试时注意如果是真机话首先要设置不锁屏. 2.自动化测试过程中如果程序后台或崩溃了.脚本运行将会暂停,直到程序再次回到前台. 3.必须明确指定关闭自动测试,测试完成或中 ...

随机推荐

  1. org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'transactionManager'

    1.错误描述 五月 01, 2015 2:12:31 下午 org.hibernate.validator.util.Version <clinit> 信息: Hibernate Vali ...

  2. 浅谈Javascript中的Label语句

    如: begin: for (var i = 0; i < 10 ; i++ ){ alert(i); } 举一个比较典型的例子,看完后即明白 Label 的应用:(未添加 Label) var ...

  3. freemarker字符串拼接(十二)

    freemarker字符串拼接 1.字符串拼接的几种类型 (1)字符串和字符串 (2)字符串和数字 (3)字符串和字符串变量 (4)字符串变量和字符串变量 2.演示示例 <#--定义字符串--& ...

  4. JVM GC笔记

    堆分区:所有new的对象都会存放在堆中      > 新生代(Young Generation):存放生命周期短的对象,具体还分为Eden和Survivor两个区,其中Survivor分为Fro ...

  5. 【BZOJ3998】弦论(后缀自动机)

    [BZOJ3998]弦论(后缀自动机) 题面 BZOJ 题解 这题应该很简单 构建出\(SAM\)后 求出每个点往后还能构建出几个串 按照拓扑序\(dp\)一些就好了 然后就是第\(k\)大,随便搞一 ...

  6. 【BZOJ3680】吊打XXX(模拟退火)

    [BZOJ3680]吊打XXX(模拟退火) 题面 BZOJ 题解 模拟退火... 就是模拟退火 然后这题有毒 各种调参数之后终于\(AC\)了.. 这种题就是玄学呀... 温度要调大 最后跑完还要向四 ...

  7. [COGS2701]:动态树

    题面 传送门 Sol LCT维护子树和 # include <bits/stdc++.h> # define IL inline # define RG register # define ...

  8. jxl 导出数据到excel

    优点: Jxl对中文支持非常好,操作简单,方法看名知意. Jxl是纯javaAPI,在跨平台上表现的非常完美,代码可以再windows或者Linux上运行而无需重新编写 支持Excel 95-2000 ...

  9. datatable 分页实例

    1.使用datatable前台分页,需要后台返回全部数据,返回lisit 2.如果是后台分页 则后台需要获取分页参数,页面中要加 "searchable":true,  " ...

  10. win7上Android环境搭建以及调试

    工欲善其事必先利其器,好记性不如烂笔头.要学习一门新的语言,首先必须得先搭环境,否则没法实践.如果之前按照网上的提示,搭建过环境,而且环境比较复杂的话,我相信隔很长一段时间后,就会忘记,到真正用的时候 ...