selenium-webdriver用例批量运行和测试套件使用 ------之我见
用例批量运行和测试套件使用 ------之我见
学习selenium-webdriver已经一段时间了,最近学习到,测试用例的批量执行,和测试套件的使用,有点自己的理解,不晓得对不对,希望大家指正!
写一个测试用例 baidu.py
class Baidu(unittest.TestCase):
def setUp(self):
self.driver=webdriver.Firefox()
self. base_url='http:www.baidu.com'
def test_search(self):
driver=self.driver
driver.get(self.base_url+'/')
driver.find_element_by_id('kw').send_keys('cnblogs')
driver.find_element_by_id('su').click()
def test_login(self):
driver=self.driver
driver.get(self.base_url+'/')
dr.find_element_by_name('userName').clear()
dr.find_element_by_name('userName').send_keys('user')
dr.find_element_by_name('password').clear()
dr.find_element_by_name('password').send_keys('123456')
dr.find_element_by_id('TANGRAM__PSP_26__submit').click()
def tearDown(self):
self.driver.quit()
1.批量执行,不使用测试套件的好处
批量执行的时候,我们在一个测试文件里面执行该文件里面的n条测试用例,如上面baidu.py这个文件,我们可以执行执行:
if __name__=="__main__":
suite=unittest.TestSuite()
suite.addTest(Baidu("test_search"))
suite.addTest(Baidu("test_login"))
runner=unittest.TextTestRunner()
runner.run(suite)
这样你可以在一个文件里面执行所有的用例,也可以执行自己想要执行的那条用例,使用“#”,可以注释掉当前不需要执行的那条用例
2.使用测试套件的好处
使用测试套件,我们需要重新建立一个专门执行用例的文件 如 run_case.py
import unittest
from baidu import Baidu
......... #导入相关模块
suite=unittest.TestSuite()
suite.addTest(unittest.makeSuite(baidu.Baidu))
runner=unittest.TextTestRunner()
runner.run(suite)
这样你可以在里面添加一条语句,就可以执行整个文件里面的case,如 suite.addTest(unittest.makeSuite(baidu.Baidu)) 这样就可以执行整个 baidu.py里面的 test_search,test_login这两条用例了。
以上就是我的理解,希望大家能够给我指正!
selenium-webdriver用例批量运行和测试套件使用 ------之我见的更多相关文章
- 【转】Selenium WebDriver + Python 环境
转自:http://www.myext.cn/webkf/a_11878.html 1. 下载必要工具及安装包 1.1 [Python开发环境] 下载并安装Python 2.7.x版本 下载地址:ht ...
- unittest详解(三) 测试套件(TestSuite)
在前面一章中示例了如何编写一个简单的测试,但有两个问题: 我们知道测试用例的执行顺序是根据测试用例名称顺序执行的,在不改变用例名称的情况下,我们怎么来控制用例执行的顺序呢? 一个测试文件,我们直接执行 ...
- teprunner测试平台测试计划批量运行用例
本文开发内容 上一篇文章已经把pytest引入到测试平台中,通过多线程和多进程的方式,运行测试用例.有了这个基础,做批量运行用例的功能就很简单了,只需要前端传入一个CaseList即可.本文的后端代码 ...
- Selenium WebDriver + Grid2 + RSpec之旅(五)---面向对象设计用例
Selenium WebDriver + Grid2 + RSpec之旅(五) ----面向对象设计用例 前几节讲了怎么一步一步的从零开始到编写出一个简单的测试用例,这一节将要讲一下怎么让测试用例变得 ...
- appium ,selenium ,webdriver 运行原理与机制
做测试开发的童鞋都知道,UI自动化你绕不开selenium, webdrvier, appium框架,那么这三者之间有什么关联,它们的原理是什么呢? 简单来说就是: Selenium2 将浏览器原生 ...
- Selenium & Webdriver 远程测试和多线程并发测试
Selenium & Webdriver 远程测试和多线程并发测试 Selenium Webdriver自动化测试,初学者可以使用selenium ide录制脚本,然后生成java程序导入ec ...
- python2.7运行selenium webdriver api报错Unable to find a matching set of capabilities
在火狐浏览器33版本,python2.7运行selenium webdriver api报错:SessionNotCreatedException: Message: Unable to find a ...
- Selenium WebDriver 数据驱动测试框架
Selenium WebDriver 数据驱动测试框架,以QQ邮箱添加联系人为示例,测试框架结构如下图,详细内容请阅读吴晓华编著<Selenium WebDiver 实战宝典>: Obje ...
- [selenium webdriver Java]使用自定义条件同步测试
Selenium WebDriver可以结合ExpectedCondition类来定义自己期望的条件 创建一个新的ExpectedCondition接口,必须实现apply方法 等待元素出现 publ ...
随机推荐
- 巧用FileShare解决C#读写文件时文件正由另一进程使用的bug
在使用C#进行文件读写的时候,一旦对文件操作频繁,总会碰到一些令人措手不及的意外.例如经常会碰到的一个问题: System.IO.IOException: 文件“XXX”正由另一进程使用,因此该进程无 ...
- Android小项目练习之一 项目简介
------- 源自梦想.永远是你IT事业的好友.只是勇敢地说出我学到! ---------- 按惯例,写在前面的:可能在学习Android的过程中,大家会和我一样,学习过大量的基础知识,很多的知识点 ...
- iOS UINavigationController 详解
developer.apple.com/cn/ 导航条 UINavigationBar继承UIView 导航控制器 UINavigationController (压栈,出栈) ...
- C#调用C++的DLL搜集整理的所有数据类型转换方式
//C#调用C++的DLL搜集整理的所有数据类型转换方式,可能会有重复或者多种方案,自己多测试 //c++:HANDLE(void *) ---- c#:System.IntPtr //c++:Byt ...
- Centos7 安装redis3.2.3 过程
1:安装wget: yum install wget2:安装pip: 1:sudo yum -y install epel-release 2:sudo yum -y install py ...
- Markdown Test
P1 1.1 interview 1.2 invoker show 1.3 Wtf? P2 for example this is a story int main() { printf(" ...
- 网络流sap算法模版
递归版sap: #include<cstdio> #include<iostream> #include<cstring> #include<algorith ...
- jquery实现简单的ajax
-->html页 1: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "htt ...
- Handler发送Message
用Handler更新UI package activity.cyq.handlermessage; import android.content.res.Resources; import andro ...
- 为IE单独写CSS的三种方法
本文由 Kayo Lee 发表,本文链接:http://kayosite.com/the-methods-make-css-only-for-ie.html 因为万恶的 IE 存在各种的不标准,因此, ...