python编程使用selenium编写测试用例

目录
  • 1. 导入依赖
  • 2. 创建driver
  • 3. 执行自动化步骤
  • 4. 断言
from selenium import webdriver
class TestBaiDu():
    def setup(self):
        self.driver=webdriver.Chrome()
        self.driver.maximize_window()
        self.driver.implicitly_wait(5)
    def teardown(self):
        self.driver.quit()
    def test_baidu(self):
        self.driver.get("https://www.baidu.com/")
        self.driver.find_element_by_css_selector("area").click()
        handle=self.driver.window_handles
        self.driver.switch_to.window(handle[-1])
        el=self.driver.find_element_by_class_name('t')
        el.click()
              assert '百度热搜 官方'==el.text

示例代码是使用pytest+selenium写的一个简单的测试用例,该用例主要实现以下操作:
第一步:打开百度
第二步:点击页面的百度图标,
第三步:切换另一窗口
第四步:找到“官方热搜”,并点击
第五步:进行断言

通过示例代码,我们要知道,使用pytest+selenium编写测试用例的话,需要有以下四个关键要素:

1. 导入依赖

from selenium import webdriver #导入依赖

使用这条代码,将我们要使用的依赖导入。

在上文Selenium介绍及安装部署中我介绍了selenium的原理,我们需要使用webdriver去驱动不同的浏览器,所以当我们使用selenium编写测试用例时一定要导入webdriver。

2. 创建driver

def setup(self):
	self.driver=webdriver.Chrome()  #声明一个chrome的webdriver
	self.driver.maximize_window()   #将浏览器窗口最大化
	self.driver.implicitly_wait(5)  #隐式等待

示例代码中,我们使用setup()teardown()分别完成用例执行前操作和用例执行后操作。在测试用例执行前,我们需要根据浏览器的种类的来声明的driver,因此我们在setup()中使用self.driver=webdriver.Chrome()声明一个chrome的驱动。

如上图所示,selenium也支持其他类型的浏览器驱动,大家可以根据自己的需求进行使用。

3. 执行自动化步骤

def test_baidu(self):
	self.driver.get("https://www.baidu.com/") #打开URL
	self.driver.find_element_by_css_selector("area").click() #定位元素并点击
	handle=self.driver.window_handles
	self.driver.switch_to.window(handle[-1]) #切换窗口
	el=self.driver.find_element_by_class_name('t')
	el.click()

这里给大家介绍两个常用的操作:
点击:click()
当定位到元素后,使用click()对元素进行点击。
例1:

find_element_by_id('kw').click()

输入:send_keys()
当定位到需要输入内容的元素后,使用send_keys()可以将我们想要输入的内容传送给元素。
例2:

find_element_by_id('kw').send_keys("selenium")

4. 断言

 assert '百度热搜 官方'==el.text

测试用例运行后,一般需要使用断言来判断用例是否和我们的预期结果一直,使用assert可以到达这一目的。

以上就是python编程使用selenium编写测试用例的详细内容,更多关于selenium测试用例的资料请关注我们其它相关文章!

(0)

相关推荐

  • Selenium(Python web测试工具)基本用法详解

    本文实例讲述了Selenium基本用法.分享给大家供大家参考,具体如下: Selenium是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等.这个工具的主要功能包括:测试与浏览器的兼容性--测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上.测试系统功能--创建回归测试检验软件功能和用户需求.

  • python+selenium自动化框架搭建的方法步骤

    环境及使用软件信息 python 3 selenium 3.13.0 xlrd 1.1.0 chromedriver HTMLTestRunner 说明: selenium/xlrd只需要再python环境下使用pip install 名称即可进行对应的安装. 安装完成后可使用pip list查看自己的安装列表信息. chromedriver:版本需和自己的chrome浏览器对应,百度下载. 作用:对chrome浏览器进行驱动. HTMLTestRunner:HTMLTestRunner是Pyt

  • python selenium执行所有测试用例并生成报告的方法

    直接上代码. # -*- coding: utf-8 -*- import time import os import os.path import re import unittest import HTMLTestRunner import shutil shutil.copyfile("setting.ini","../setting.ini") casepaths = [] def createsuite(casepath): testunit = unit

  • selenium python 实现基本自动化测试的示例代码

    安装selenium 打开命令控制符输入:pip install -U selenium 火狐浏览器安装firebug:www.firebug.com,调试所有网站语言,调试功能 Selenium IDE 是嵌入到Firefox 浏览器中的一个插件,实现简单的浏览器操 作的录制与回放功能,IDE 录制的脚本可以可以转换成多种语言,从而帮助我们快速的开发脚本,下载地址:https://addons.mozilla.org/en-US/firefox/addon/selenium-ide/ 如何使用

  • python编程使用selenium编写测试用例

    目录 1. 导入依赖 2. 创建driver 3. 执行自动化步骤 4. 断言 from selenium import webdriver class TestBaiDu(): def setup(self): self.driver=webdriver.Chrome() self.driver.maximize_window() self.driver.implicitly_wait(5) def teardown(self): self.driver.quit() def test_bai

  • python编程使用selenium模拟登陆淘宝实例代码

    selenium简介 selenium 是一个web的自动化测试工具,不少学习功能自动化的同学开始首选selenium ,相因为它相比QTP有诸多有点: * 免费,也不用再为破解QTP而大伤脑筋 * 小巧,对于不同的语言它只是一个包而已,而QTP需要下载安装1个多G 的程序. * 这也是最重要的一点,不管你以前更熟悉C. java.ruby.python.或都是C# ,你都可以通过selenium完成自动化测试,而QTP只支持VBS * 支持多平台:windows.linux.MAC ,支持多浏

  • Python编程使用Selenium模拟淘宝登录实现过程

    目录 一.利用xpath进行(全程使用) 二.代码部分与图片内容 一.利用xpath进行(全程使用) driver.find_element_by_xpath() 二.代码部分与图片内容 打开淘宝网站,点击登录,输入账号密码,进入网站,搜索框中输入电脑,然后点击搜索 #导入selenium from selenium import webdriver #导入等待时间 import time #使用火狐浏览器进行访问 driver = webdriver.Firefox() #访问淘宝网站 dri

  • 如何在python中使用selenium的示例

    最近基于selenium写了一个python小工具,记录下学习记录,自己运行的环境是Ubuntu 14.04.4, Python 2.7,Chromium 49.0,ChromeDriver 2.16 selenium简介 selenium提供了一个通用的接口,可模拟用户来操作浏览器,比如用于自动化测试等. selenium的核心是WebDriver,它提供了一组接口,这些接口能够操作各种跨平台的浏览器.各大浏览器厂商. 各大浏览器厂商也支持Selenium,将其作为浏览器的一部分. selen

  • Python Nose框架编写测试用例方法

    1. 关于Nose nose项目是于2005年发布的,也就是 py.test改名后的一年.它是由 Jason Pellerin 编写的,支持与 py.test 相同的测试习惯做法,但是这个包更容易安装和维护. nose的口号是:扩展unittest,nose让测试更简单! nose官网:http://nose.readthedocs.io/en/latest/index.html 使用nose框架进行Python项目的自动化测试,可以参考:http://www.cnblogs.com/liaof

  • Python编程编写完善的命令行工具

    目录 1. python-fire 2. mando 最后的话 1. python-fire python-fire 是一个三方库,可以将任何 Python 对象变成一个命令行接口. 使用前先 pip install fire 下. 可以把你的函数直接变成命令行接口: import fire def hello(name="World"): return "Hello %s!" % name if __name__ == '__main__': fire.Fire(

  • python编程学习使用管道Pipe编写优化代码

    目录 什么是管道? Where:可迭代对象中的过滤元素 Select: 将函数应用于可迭代对象 展开可迭代对象 1.chain方法 2.traverse:递归展开可迭代对象 将列表中的元素分组 结论 我们知道 map 和 filter 是两种有效的 Python 方法来处理可迭代对象. 但是,如果你同时使用 map 和 filter,代码可能看起来很混乱. 如果你可以使用管道那不是更好了?像下面这样的方式来处理. Pipe 库可以做到这一点. 什么是管道? Pipe 是一个 Python 库,可

  • Python编程使用NLTK进行自然语言处理详解

    自然语言处理是计算机科学领域与人工智能领域中的一个重要方向.自然语言工具箱(NLTK,NaturalLanguageToolkit)是一个基于Python语言的类库,它也是当前最为流行的自然语言编程与开发工具.在进行自然语言处理研究和应用时,恰当利用NLTK中提供的函数可以大幅度地提高效率.本文就将通过一些实例来向读者介绍NLTK的使用. NLTK NaturalLanguageToolkit,自然语言处理工具包,在NLP领域中,最常使用的一个Python库. NLTK是一个开源的项目,包含:P

  • python实现自动化脚本编写

    目录 1. 打开浏览器,访问p.to 2. 登陆 3. 修改管理员密码 4. 单元测试数据 5. 检查输入的数据合法性 6. 获取输入错误数据之后的页面提示语 7. 编写测试用例 8.编写单元测试类 8.1 单元测试中的通用操作 8.2 测试类 9. 进行单元测试并生成测试报告 10. 关闭浏览器 11. 异常处理 11.1 点击函数 11.2 填写表单 11.3 元素加载 12. 完整的测试代码 本文以修改用户名密码单元为案例,编写测试脚本.完成修改用户名密码模块单元测试. (ps.这个dem

  • python编程羊车门问题代码示例

    问题: 有3扇关闭的门,一扇门后面停着汽车,其余门后是山羊,只有主持人知道每扇门后面是什么.参赛者可以选择一扇门,在开启它之前,主持人会开启另外一扇门,露出门后的山羊,然后允许参赛者更换自己的选择. 请问: 1.按照你的第一感觉回答,你觉得不换选择能有更高的几率获得汽车,还是换选择能有更高的几率获得汽车?或几率没有发生变化? 答:第一感觉换与不换获奖几率没有发生变化. 2.请自己认真分析一下"不换选择能有更高的几率获得汽车,还是换选择能有更高的几率获得汽车?或几率没有发生变化?" 写出

随机推荐