selenium学习笔记(加入unittest)
利用firefox浏览器的selenium IDE可以直接生成webdriver+unittest的python脚本
当然博主是要为了自己编写脚本、对用例内容进行了修改,把元素校验功能也放入了用例中
代码如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import unittest from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
from time import sleep class SeleniumIde(unittest.TestCase):
def setUp(self):
print "自动化测试用例执行开始"
self.driver = webdriver.Firefox()
self.driver.implicitly_wait(30)
# 智能等待30S
self.Errors = []
# 错误信息列表 def tearDown(self):
self.driver.quit()
self.assertEqual([], self.Errors)
# 检查错误信息列表 若不为空则返回显示
print "自动化测试用例执行结束" def compare_title(self, ta, tb):
if ta == tb:
print "Testcase_title: pass"
else:
print "Testcase_title: false"
# 比较title显示结果 def compare_url(self, ua, ub):
if ua == ub:
print "Testcase_url: pass"
else:
print "Testcase_url: false"
# 比较url显示结果 def test_login(self):
driver = self.driver
driver.get("http://www.cnblogs.com/")
# 测试地址 后面可以添加响应地址
driver.find_element_by_css_selector("a[onclick = 'login();return false']").click()
driver.find_element_by_css_selector("input[type = 'text']").click()
driver.find_element_by_css_selector("input[type = 'text']").send_keys(u"堕落的伊丝莉")
# 这里用户名由于是中文前面要加 u
driver.find_element_by_css_selector("input[type = 'password']").click()
driver.find_element_by_css_selector("input[type = 'password']").send_keys("xxxxxx")
# 输入密码、密码当然按照实际内容添加
driver.find_element_by_css_selector("input[type = 'submit']").click()
sleep(2) SeleniumIde.compare_title(self, driver.title, u"博客园 - 开发者的网上家园")
SeleniumIde.compare_url(self, driver.current_url, "http://www.cnblogs.com/")
try:
driver.find_element_by_css_selector("a[href = 'http://home.cnblogs.com/u/cllovewxq/']")
# 验证是否可以在页面元素中查找到当前登录状态
print "Testcase_result: pass"
except NoSuchElementException as e:
print "Testcase_result: false" if __name__ == "__main__":
unittest.main()
加入了一些代码注释方便理解
博主这也是看了大神博客中关于selenium的讲解
这里附上地址:
http://www.cnblogs.com/fnng/p/3300788.html
selenium学习笔记(加入unittest)的更多相关文章
- Python+Selenium学习笔记16 - unittest单元测试框架
unittest单元测试框架包括 Test Case, Test Suite, Test Runner, Test Fixture Test Cases 组成Test Suite, Test Run ...
- Selenium 学习笔记(一)
selenium 学习整理 初学者,如果有不当得地方请指出,非常感谢. 准备事项: 1. Python 安装包 安装Python,并勾选添加环境变量. 安装完成后,打开dos窗口,输入python,看 ...
- selenium 学习笔记 ---新手学习记录(1) 问题总结
说明:每次学习各种语言时,环境搭建访问国外网址最头疼了,现在只要是工具下载好放到自己网盘,可以随时用. 1.首先工具准备,selenium需要用到的 下载地址 访问密码 ff8f 2.我选择的语言时j ...
- selenium学习笔记(HTMLTestRunner测试报告)
之前提到selenium加入unittest框架.可以引入HTMLTestRunner扩展.以此来生成测试报告 首先是分享下载的百度云地址 http://pan.baidu.com/s/1pKUItW ...
- selenium学习笔记(selenium IDE下载安装)
今天自己一直在瞎捣鼓 最后这里整理下 selenium IDE 这个录制工具的下载安装 首先这个工具只支持火狐浏览器firefox.使用火狐浏览器进入selenium官网: http://www.se ...
- selenium学习笔记(简单的元素定位)
收拾一下心情开始新的一周工作 继续是selenium的学习.配置成功后 由于所有操作都是建立在页面元素基础上的.所以下来就是学习定位元素 首先是基础的定位.就使用博客园首页搜索框为例: 下面是代码: ...
- selenium学习笔记(selenium下载安装)
博主自己捣鼓的接口框架先到这里 等工作上正式开始使用再后续完善需求 还是继续学习python.学编程就直接动手写 就想看看python+selenium的组合 什么都不多说.先下载安装 博主这里已经安 ...
- Selenium学习笔记(1) - 自动化测试体系与原理
技术体系 基于代码的测试(Code-Based Testing) 基于协议的测试(Protocol-Based Testing) 基于界面的测试(GUI-Based Testing) 工作原理 基于代 ...
- Python+Selenium学习笔记17 - HTML测试报告
运行少量case时 1 # coding = utf-8 2 3 from selenium import webdriver 4 import unittest 5 import time 6 fr ...
随机推荐
- iOS与导航相关的都在这
// 设置导航背景图片 (一旦设置背景图片(变为不透明),透明层不起作用) [self.navigationBar setBackgroundImage:[UIImage imageNamed:@&q ...
- 如何查看python的api
如何查看python selenium的api 经常发现很多同学装好了python+selenium webdriver开发环境后不知道怎么去查看api文档,在这里乙醇简单介绍一下具体方法,其实非 ...
- Java 之包
作用: 对类文件进行分类管理, 类似于文件夹 给类提供多层命名(名称)空间 写在程序的第一行, 包名使用小写 类名的全称是: 包名.类名 包也是一种封装形式 // 示例 package mypack; ...
- 三.实例演示insert/update/delect更新数据库
1.逻辑图 2.只是准备 3.代码展示 import pymysql conn=pymysql.connect( host='192.168.199.249', port=3306, user='ro ...
- Python面向对象中的“私有化”
Python面向对象中的“私有化” Python并不直接支持私有方式,而要靠程序员自己把握在外部进行特性修改的时机. 为了让方法或者特性变为私有(从外部无法访问),只要在它的名字前面加上双下划线即可. ...
- mysql 如何找出两张表之间的关系
分析步骤: #1.先站在左表的角度去找 是否左表的多条记录可以对应右表的一条记录,如果是,则证明左表的一个字段foreign key 右表一个字段(通常是id) #2.再站在右表的角度去找 是否右表的 ...
- cmd命令行和bat批处理操作windows服务(转载)
一.cmd命令行---进行Windows服务操作 1.安装服务 sc create 服务名 binPath= "C:\Users\Administrator\Desktop\win32srv ...
- R 基本函数总结
基本一.数据管理 vector:向量 numeric:数值型向量 logical:逻辑型向量 character:字符型向量 list:列表 data.frame:数据框 c:连接为向量或列表 len ...
- 吴超老师课程--Sqoop的安装和介绍
SQOOP是用于对数据进行导入导出的. (1)把MySQL.Oracle等数据库中的数据导入到HDFS.Hive.HBase中 (2)把HDFS.Hive.HBase中的数据导出到MySQ ...
- sizeof 是编译时运算符
typedef char RT1;typedef struct{ char a[2]; } RT2;template<typename T> RT1 test(typename T::X ...