Python+Selenium 自动化实现实例-模块化调用

public 目录存一些公共模块,供用例调用。login.py 内容如下:

# coding=utf-8
import time

# login

def login(driver):
    driver.find_element_by_class_name("ui-dialog-close").click()  # 关闭弹窗
    driver.find_element_by_xpath("//*[@id=‘topbar_nav‘]/li[1]/a[1]").click()  # 点击登录按钮
    driver.find_element_by_id("username").clear()
    driver.find_element_by_id("username").send_keys("18055352262")
    driver.find_element_by_id("password").clear()
    driver.find_element_by_id("password").send_keys("hj123456")
    driver.find_element_by_xpath("//input[@class=‘btn‘]").click()  # 点击确认登录按钮

# logout

def logout(driver):
    time.sleep(2)
    driver.find_element_by_link_text(u"退出").click()

接下来login_lizi_public 文件引用login.py 中所定义的函数,代码如下:

#coding=utf-8
from  selenium import webdriver
from public import login
import unittest

class LoginTest(unittest.TestCase):
    def setUp(self):
        self.driver = webdriver.Chrome()
        self.base_url = "http://www-test.lizi.com"
        self.driver.implicitly_wait(5)

    def test_lizi(self):
        driver = self.driver
        driver.get(self.base_url)
        #调用登录函数
        login.login(driver)
        text = driver.find_element_by_css_selector(‘.name‘).text
        print text
        self.assertEqual(text,u"被风吹过的夏天",msg="error")
        #调用退出函数
        login.logout(driver)

    def tearDown(self):
        self.driver.quit()

if __name__ == "__main__":
    unittest.main()
时间: 2024-11-14 18:26:16

Python+Selenium 自动化实现实例-模块化调用的相关文章

Python+Selenium 自动化实现实例-实现文件下载

#coding=utf-8 from selenium import webdriver #实例化一个火狐配置文件 fp = webdriver.FirefoxProfile() #设置各项参数,参数可以通过在浏览器地址栏中输入about:config查看. #设置成0代表下载到浏览器默认下载路径:设置成2则可以保存到指定目录 fp.set_preference("browser.download.folderList",2) #是否显示开始,(个人实验,不管设成True还是False

Python+Selenium 自动化实现实例-打开浏览器模拟进行搜索数据并验证

#导入模块 from selenium import webdriverfrom selenium.webdriver.common.keys import Keys #启动火狐浏览器driver = webdriver.Firefox() #打开urldriver.get("http://www.python.org") #添加断言assert "Python" in driver.title #开始定位elem = driver.find_element_by_

Python+Selenium 自动化实现实例-处理分页(pagination)

场景 对分页来说,我们最感兴趣的是下面几个信息 总共有多少页 当前是第几页 是否可以上一页和下一页 代码 下面代码演示如何获取分页总数及当前页数.跳转到指定页数 #coding:utf-8 from selenium import webdriver import time driver = webdriver.Chrome() driver.get("https://segmentfault.com/news") # 获得所有分页的数量 # -2是因为要去掉上一个和下一个 total

Python+Selenium 自动化实现实例-获取页面元素信息(百度首页)

#coding=utf-8from selenium import webdriverdriver = webdriver.Chrome()driver.get("http://www.baidu.com") # 获得输入框尺寸size = driver.find_element_by_id("kw").sizeprint size #返回百度页面底部备案信息 text = driver.find_element_by_id("cp").text

python+selenium自动化环境配置及使用实例

一.搭建环境相关地址以及相关模块下载地址 1.#各个浏览器驱动下载地址: https://www.cnblogs.com/nancyzhu/p/8589764.html 2.#sublime+python+selenium自动化配置教程: http://python.tedu.cn/know/289803.html 3.#html测试报告: https://github.com/defnngj/HTMLTestRunner         http://www.testpub.cn/t/213

Python+selenium自动化公共逻辑步骤封装

开篇 个人博客"Python+selenium的GUI自动化实现"提到的chrome与IE浏览器调用插件已上传至51CTO下载,对应链接分别为:chrome,http://down.51cto.com/data/2171584:IE,http://down.51cto.com/data/2171585:有需要的直接下载即可:  正文 关于自动化,其实质就是用机器操作代替手工执行,从而减少人力投入.节约项目运营成功.优秀的自动化框架,可能的一个发展过程,前期自动化用例写作实现过程,可能需

如何写好Python+Selenium自动化?

哈喽,各位客官好,今天我给大家讲讲如何使用Python+Selenium做自动化测试,楼主在做开发测试之前做得java开发,由于种种原因,楼主转成了开发测试,接着又自学了脚本语言linux和python,对于这两门脚本,我是非常的喜欢,为什么呢,因为用起来效率太高了,所以楼主弃java转python,至于为什么,不做多解释,你懂得.接下来我将给各位讲讲如何用python+selenium自动化 1,什么是selenium selenium是一个开源的自动化测试框架,主要适用WEB测试,可以支持多

python + selenium自动化环境常见问题小结

python + selenium自动化环境常见问题小结 (1)操作Windows窗口有三种方法,一是使用AutoIT软件生成exe程序,再用系统命令调用:二是使用SendKeys类模拟键盘操作(只能定位当前的焦点):三是使用pywinauto组件(win32gui) (2)pywinauto包只支持到python2.6版本.SendKeys包在python3.0版本上也无法安装成功. (3)执行完用例进行断言校验时,一般会获取元素的text属性,有时候在页面上查看元素有text值,而获取的为空

python+selenium自动化环境搭建之后,能打开firefox,却不能执行自动化操作

python+selenium自动化环境搭建之后,选择执行,能够打开firefox,但是却不能继续执行后续操作.原因是selenium的版本与firefox的版本不兼容. 解决办法: 1.将firefox降到与selenium相对应的版本.例如我使用selenium版本是3.3.3,那我对应的firefox版本是52.0.2,如果firefox继续升级,也会出现不兼容的情况.建议可以在firefox的工具--选项--高级中设置为不检查更新,以免软件自动更新出现问题. 2.安装该浏览器版本对应的g