【原创】python+selenium,用xlrd,读取excel数据,执行测试用例
# -*- coding: utf-8 -*-
import unittest
import time
from selenium import webdriver
import xlrd,xlwt
import HTMLTestRunner
from openpyxl import load_workbook
class mylogintest(unittest.TestCase):#定义一个mylogintest类继承unittest.TestCase类
'''打开百度测试'''
# @classmethod
# def tearDownClass(cls):#用例执行后的初始化工作
# print('结束测试') def setUp(self):#用例执行前的初始化工作
print("开始测试")
self.driver = webdriver.Firefox() def tearDown(self):#用例执行后的初始化工作
print("结束测试")
self.driver.quit() def testopenBD(self):
'''打开百度'''
book = xlrd.open_workbook("mylogintest.xlsx") # 新建文件对象
sheet = book.sheet_by_name("Sheet1") # 获取文件对象中sheet名为login的sheet对象
# # # url1 = sheet.cell(1, 0).value 获取第2行第1列的值
# # # url2 = sheet.cell(1, 1).value获取第2行第2列的值
nrows = sheet.nrows # 获取总行数
urllist = []
for i in range(1, nrows):
print(i)
nrowsvalue = sheet.row_values(i, 0)#获取第i+1行 第1列的值
urllist.append(nrowsvalue) # 这里添加元素不能用list = list.append(nrowsvalue);否则会出现nonetype的错误;
print(urllist)
driver = self.driver
for i in range(len(urllist)): # 获取list长度;range表示默认0开始的整数迭代
print(urllist[i])
driver.get(''.join(urllist[i]))#将list类型转换成字符串类型
print(driver.title)
self.assertEqual(driver.title,'百度一下,你就知道','失败')#添加断言;当driver.title的值为‘百度一下,你就知道’时,断言通过,否则不通过,程序将会终断
time.sleep(3) # @classmethod
# def setUpClass(cls):##用例执行前的初始化工作
# print('开始测试') if __name__=='__main__':
filename = './'+'mylogintestresult.html'#定义文件名与路径
fp = open(filename,'wb')#生成文件
ut = unittest.TestSuite() # 创建测试套件;TestSuite不加括号的结果:addTest() missing 1 required positional argument: 'test'
ut.addTest(mylogintest('testopenBD'))#将要执行的用例加入测试套件中
runner = HTMLTestRunner.HTMLTestRunner(stream=fp,title='分别打开百度51网站',description='百度51') #如果引用的是from HTMLTestRunner import HTMLTestRunner,这里就不需要写两个HTMLTestRunner,一个就够了
runner.run(ut)#运行测试套件
fp.close()
EXCEL表格内容为:
生成的测试报告如下:
【原创】python+selenium,用xlrd,读取excel数据,执行测试用例的更多相关文章
- python使用xlrd读取excel数据时,整数变小数的解决办法
python使用xlrd读取excel数据时,整数变小数: 解决方法: 1.有个比较简单的就是在数字和日期的单元格内容前加上一个英文的逗号即可.如果数据比较多,也可以批量加英文逗号的前缀(网上都有方法 ...
- Python用xlrd读取Excel数据到list中再用xlwt把数据写入到新的Excel中
一.先用xlrd读取Excel数据到list列表中(存入列表中的数据如下图所示) import xlrd as xd #导入需要的包 import xlwt data =xd.open_workboo ...
- python使用xlrd读取excel数据
一.安装xlrd 库的安装我这里就不说了.. 二.读取 excel 前提条件:excel文件名称为 excel_data.xlsx 1.打开excelw 文件 workbook = xlrd.open ...
- 使用python三方库xlrd解析excel数据
excel是平常用的比较多的一种数据格式,而在自动化测试过程中,解析其数据以供脚本使用就是一个重要的工作,幸好已有现存的三方库供使用,而不必重新造轮子. 一.安装xlrd模块 到python官网下载h ...
- Python读取Excel数据并根据列名取值
一直想将自己接触到的东西梳理一遍,可就是迈不出第一步,希望从这篇总结开始不要再做行动的矮人了. 最近测试过程中需要用到python读取excel用例数据,于是去了解和学习了下xlrd库,这里只记录使用 ...
- 【python-excel】Selenium+python自动化之读取Excel数据(xlrd)
Selenium2+python自动化之读取Excel数据(xlrd) 转载地址:http://www.cnblogs.com/lingzeng86/p/6793398.html ·········· ...
- python 的两个模块xlwt,xlrd,写入和读取Excel数据
http://www.cnblogs.com/fireme/p/3887284.html 这上面写的很全,不过我只需要简单的读和写的操作就ok了,下面是我写的读和写入Excel操作 读取Excel数据 ...
- Delphi中使用python脚本读取Excel数据
Delphi中使用python脚本读取Excel数据2007-10-18 17:28:22标签:Delphi Excel python原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 . ...
- python 读取excel数据并将测试结果填入Excel
python 读取excel数据并将测试结果填入Excel 读取一个Excel中的一条数据用例,请求接口,然后返回结果并反填到excel中.过程中会生成请求回来的文本,当然还会生成一个xml文件.具体 ...
- Python模块学习之xlrd 读取Excel时传入formatting_info=True报错:NotImplementedError: formatting_info=True not yet implemented
问题:xlrd读取Excel时传入 formatting_info=True 报错 之前我们使用读取xls文件的时候都是使用的xlrd库,但是这个库只能操作 .xls格式,对于后来的 .xlsx的版本 ...
随机推荐
- NancyFx And ReactiveX
http://reactivex.io/ https://github.com/dotnet/reactive http://nancyfx.org/ NancyFX Nancy快速上手 (使用Nan ...
- 新唐NDA102EC1中更改UUART1作为调试串口打印输出调试信息
新唐NDA102EC1中更改UUART1作为调试串口打印输出调试信息 参考网上STM32修改fputc(int ch, FILE *f),把串口打印函数printf()重定向到UUART1模块的端口输 ...
- CentOS7-Docker 搭建Maven私服
使用Docker搭建Maven私服 前言本文主要介绍,使用Docker创建一个nexus私服,然后编写一个Library,上传到私服,然后使用demo工程依赖. 本文不对Maven.Nexus.私服等 ...
- graph处理工具
仅作为记录笔记,完善中...................... 1 PyGSP https://pygsp.readthedocs.io/en/stable/index.html ht ...
- Spring security oauth2 password flow
Spring security oauth2 包含以下两个endpoint来实现Authorization Server: AuthorizationEndpoint: 授权请求访问端点, 默认url ...
- AtCoder-arc060 (题解)
A - 高橋君とカード / Tak and Cards (DP) 题目链接 题目大意: 有 \(n\) 个数字,要求取出一些数字,使得它们的平均数恰好为 \(x\) ,问有几种取法. 大致思路: 只要 ...
- 深度学习-强化学习(RL)概述笔记
强化学习(Reinforcement Learning)简介 强化学习是机器学习中的一个领域,强调如何基于环境而行动,以取得最大化的预期利益.其灵感来源于心理学中的行为主义理论,即有机体如何在环境给予 ...
- jwt的思考
什么是jwt jwt的问题 jwt的是实践 https://www.pingidentity.com/en/company/blog/posts/2019/jwt-security-nobody-ta ...
- 《JAVA高并发编程详解》-volatile和synchronized
- onActivityResult方法的使用
转发自:https://blog.csdn.net/hacker_crazy/article/details/78345450 在进行界面间的跳转和传递数据的时候,我们有的时候要获得跳转之后界面传递回 ...