#encoding:utf-8

'''

方法:通过selenium的webdriver模块结合unittest单元测试框架自动化登录系统,下文枚举了几个测试用例登录情况,其中包括用户名和密码的验证以及滑动模块的滑动验证。

作者:范先生

时间:2018年4月

'''

from selenium import webdriver

from selenium.webdriver.common.action_chains import ActionChains

import unittest

import time

class LoginCase(unittest.TestCase):

def setUp(self):

self.driver = webdriver.Chrome(executable_path="D:\\4software\\Python\\python27\\driver\\chrome\\chromedriver")

self.driver.maximize_window()

#定义登录系统方法

def Login(self,username,password,offset):

self.driver.get("http://192.168.20.21")

time.sleep(2)

self.driver.find_element_by_id("username").clear()

self.driver.find_element_by_id("username").send_keys(username)

self.driver.find_element_by_id("password").clear()

self.driver.find_element_by_id("password").send_keys(password)

source =self.driver.find_element_by_xpath("//*[@id='form1']/div/label[3]/div/div/div[3]/div")

ActionChains(self.driver).drag_and_drop_by_offset(source, offset, 0).perform()

time.sleep(1)

self.driver.find_element_by_xpath("//*[@id='form1']/div/button").click()

time.sleep(5)

def test_login_success(self):

'''用户名和密码正确的情况'''

self.Login('superadmin','superxxxxx123',300)

link = self.driver.find_element_by_xpath("//*[@id='button-1252-btnInnerEl']")

# 用assertTrue断言“上网用户管理”在"//*[@id='button-1252-btnInnerEl']"里面

self.assertTrue(u'上网用户管理' in link.text)

self.driver.get_screenshot_as_file("D:\\4software\\Python\\script\\untitled\\login_success.png")

print "Login is ok !"

def test_paswd_error(self):

'''用户名正确,密码错误的情况'''

self.Login('superadmin','1234567',300)

error_message = self.driver.find_element_by_xpath('//*[@id="dvMsgCT"]').text

self.assertIn(u'帐号或密码错误',error_message)

self.driver.get_screenshot_as_file("D:\\4software\\Python\\script\\untitled\\login_paswd_error.png")

print "assert is right !"

def test_paswd_tabsoms(self):

'''用户名正确,密码非法字符的情况'''

self.Login('superadmin','######',300)

error_message = self.driver.find_element_by_xpath('//*[@id="dvMsgCT"]').text

self.assertIn(u'帐号或密码错误',error_message)

self.driver.get_screenshot_as_file("D:\\4software\\Python\\script\\untitled\\login_paswd_tabsomes.png")

print "assert is right !"

def test_paswd_null(self):

'''用户名正确,密码为空'''

self.Login('superadmin','',300)

error_message = self.driver.find_element_by_xpath('//*[@id="dvMsgCT"]').text

self.assertIn(u'账号或密码不能为空',error_message)

self.driver.get_screenshot_as_file("D:\\4software\\Python\\script\\untitled\\login_paswd_null.png")

print "assert is right !"

def test_paswd_offset_Low(self):

'''用户名正确,密码正确,滑块没有移动到指定位置!'''

self.Login('superadmin','supermanager123',100)

error_message = self.driver.find_element_by_xpath('//*[@id="dvMsgCT"]').text

self.assertIn(u'请拖动滑动解锁验证!',error_message)

self.driver.get_screenshot_as_file("D:\\4software\\Python\\script\\untitled\\login_paswd_offset_Low.png")

print "assert is right !"

def tearDown(self):

time.sleep(2)

# print '/n'

# print u"测试通过!"

self.driver.quit()

if __name__=="__main__":

unittest.main()

——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————

执行结果:

D:\4software\Python\python27\install\python.exe D:/4software/Python/script/untitled/login.py

Login is ok !

.assert is right !

.assert is right !

.assert is right !

.assert is right !

.

----------------------------------------------------------------------

Ran 5 tests in 126.282s

OK

python selenium自动化获取oracle,python27+selenium3自动化登录测试相关推荐

  1. Python + Selenium实现web端的UI自动化

    我的第一个Python自动化用例 环境准备 安装好Python 下载最新Python 命令行下查看是否安装成功: Python自带运行环境: IDLE是Python自带的集成开发环境,在开始菜单中搜索 ...

  2. python+selenium,实现带有验证码的自动化登录功能

    python+selenium的环境准备,请自行安装完成,这里直接贴代码,方便做项目时直接使用. 1 import time 2 from selenium import webdriver 3 fr ...

  3. python数据接口获取数据_python UI自动化实战记录二:请求接口数据并提取数据

    该部分记录如何获取预期结果-接口响应数据,分成两步: 1 获取数据源接口数据 2 提取后续页面对比中要用到的数据 并且为了便于后续调用,将接口相关的都封装到ProjectApi类中. 新建python ...

  4. python selenium chrome获取每个请求内容_python+selenium调用chrome打开网址获取内容

    通过selenium库,python可以调用chrome打开指定网页并获取网页内容或者模拟登陆获取网页内容 1,安装selenium和配置chromedriver 安装selenium C:\User ...

  5. Python+selenium+PhantomJS获取百度搜索结果真实链接地址

    祝愿所有参加高考的孩子们都能超水平发挥,考出好成绩,考上理想的学校!也希望你们考上大学之后仍然保持高考前的学习劲头! ===========正文============= 问题描述:在爬取百度搜索结果 ...

  6. Python selenium自动获取URP教务系统课表并以图片形式保存

    之前写过一篇也是爬URP的(Python爬取URP教务系统课程表并保存到excel),不过用的是request+post请求,中间就借用了一下selenium获取验证码链接,所以这次我就写了一个单单用 ...

  7. Python selenium Browsermob-Proxy获取网页加密请求参数的方法及过程

    一.问题 爬虫在获取页面数据时可能会遇到许多页面异步加载.js加密.动态Cookie等问题,我们在做爬虫开发的时候经常用到浏览器的开发者工具,分析网页元素,查看资源加载(Network)等.Selen ...

  8. Python+selenium自动获取Web端斗鱼直播信息

    环境准备 Python 谷歌浏览器或其他浏览器的Driver驱动,最好设置下环境变量(全局驱动),或者使用局部的驱动也可以 安装 selenium库 实现 打开浏览器 定位元素 打开页面调试,即可发现 ...

  9. python selenium 弹窗获取元素_python中能否使用selenium获取弹窗的文本内容?

    问题如下:网页输入验证码正确并且查询到结果则跳转,未查询到结果则弹窗(如下),输入错误也弹窗(两个弹窗文本内容不同).如何获取未查询到结果的弹窗和验证码错误的弹窗文本内容,再根据其弹窗内容执行相应的操 ...

最新文章

  1. 提高建模效率,改变手工作坊式生产,AutoML的技术研究与应用进展如何了?
  2. python爬虫能扒什么_Python爬虫实例扒取2345天气预报
  3. 理解浏览器允许的并发请求资源数
  4. java怎么xml文件解析_Java对Xml文件解析
  5. 解决Error: Protected multilib versions:
  6. 2014.11.12模拟赛【美妙的数字】| vijos1904学姐的幸运数字
  7. B - Dungeon Master
  8. 有关wxGLCanvas的问题
  9. Clark变换的等幅值变换乘为什么2/3
  10. NWR,Gossip,Paxos分布式一致性协议
  11. Using Technorati Tags
  12. go的close函数理解
  13. Python爬取京东商品评论数据
  14. 梦想照进现实的百度Apollo,越来越近的无人驾驶时代
  15. 2021-2027全球与中国触控板市场现状及未来发展趋势
  16. SQL Server应用开发概述
  17. 深入浅出 Create React App
  18. android车机总是自动熄屏,华为Mata20 Pro等Android屏幕常亮/永不熄屏APP:no screen off v 1.16...
  19. 微信小程序--传送方块
  20. 四川大学计算机研究生学习氛围,川大清退上百名研究生

热门文章

  1. java怎么更改目标文件夹_java – IntelliJ无法同步目标文件夹中的更改
  2. java 代码效率_Java效率
  3. python花萼长度表_Python 数据分析答疑 5:Pandas入门
  4. 海思芯片固件修改工具_地平线X3开发板开箱、固件刷写、环境配置
  5. fastjson判空_fastjson JSON 对象为空保留null
  6. h3c wa2620胖ap设置_AP考试|错过报名不用慌,香港考区目前仍然可以报名!
  7. 鸿蒙os不需要wifi,【鸿蒙HarmonyOS HiSpark IPC DIY Camera】hi3518-wifi的配置与使用
  8. [pyinstaller]PermissionError: [Errno 13] Permission denied:C:\Users\xxx\AppData\Local\ucrtbase.dll
  9. ICA处理后,如何判断眼电、心电等成分?
  10. seaborn系列 (17) | 回归模型图lmplot()