python for selenium 数据驱动测试
1 # -*- coding:utf-8 -*- 2 """ 3 数据驱动测试,从 csv 文件中读取数据 4 """ 5 from selenium import webdriver 6 import csv, sys 7 8 9 test_executed = 0 10 test_passed = 0 11 test_failed = 0 12 test_status = True 13 14 15 try: 16 driver = webdriver.Firefox() 17 driver.get('C:\BMICalculator.html') 18 19 datafile = open(r'c:\data.csv', 'rb') 20 reader = csv.reader(datafile) 21 22 test_executed = 0 23 24 for row in reader: 25 test_executed += 1 26 print 'Test' + str(test_executed) 27 28 heightField = driver.find_element_by_name('heightCMS') 29 heightField.clear() 30 heightField.send_keys(row[0]) 31 32 weightField = driver.find_element_by_name('weightKg') 33 weightField.clear() 34 weightField.send_keys(row[1]) 35 36 calculateButton = driver.find_element_by_id('Calculate') 37 calculateButton.click() 38 39 bmiLabel = driver.find_element_by_name('bmi') 40 bmiCategoryLabel = driver.find_element_by_name('bmi_category') 41 42 if bmiLabel.get_attribute('value') == row[2]: 43 print "PASS, expected value for BMI <" + row[2] + "> actual <" + bmiLabel.get_attribute('value') + ">" 44 else: 45 print "FAIL, expected value for BMI <" + row[2] + "> actual <" + bmiLabel.get_attribute('value') + ">" 46 test_status = False 47 48 if bmiCategoryLabel.get_attribute('value') == row[3]: 49 print "PASS, expected value for BMI Category <" + row[3] + "> actual <" + bmiCategoryLabel.get_attribute('value') + ">" 50 else: 51 print "Fail, expected value for BMI Category <" + row[3] + "> actual <" + bmiCategoryLabel.get_attribute('value') + ">" 52 test_status = False 53 54 if test_status == True: 55 test_passed = test_passed + 1 56 else: 57 test_failed = test_failed + 1 58 59 except : 60 print "Unexpected error: ", sys.exc_info()[0] 61 raise 62 63 finally: 64 print "---------------------------------------------------------------" 65 print "Total (" + str(test_executed) + ") Tests Executed" 66 print "Total (" + str(test_passed) + ") Tests Passed" 67 print "Total (" + str(test_failed ) + ") Tests Failed" 68 driver.close() 69 datafile.close()
转载于:https://www.cnblogs.com/Roger1227/p/3192116.html
python for selenium 数据驱动测试相关推荐
- Unittest自动化测试框架教程(四)——Python中的数据驱动测试DDT
" 数据驱动测试DDT(Data Drivern test),是自动化测试领域优势中亮眼的闪光点,在unittest测试框架中对数据驱动更是提供了强大的支持,文章通过基础概念的引入,介绍了 ...
- python数据驱动读取用例_Python Selenium 之数据驱动测试
数据驱动模式的测试好处相比普通模式的测试就显而易见了吧!使用数据驱动的模式,可以根据业务分解测试数据,只需定义变量,使用外部或者自定义的数据使其参数化,从而避免了使用之前测试脚本中固定的数据.可以将测 ...
- python数据驱动测试设计_GitHub - 13691579846/DataDriverTestFrameWork: python+selenium+pageobject数据驱动测试框架...
DataDriverTestFrameWork 一.说明 ``本实例为数据驱动测试框架搭建实践`` 二.框架分析 注意!注意!注意!重要的示请说3遍,本项目只用于学习使用,为了你能够成功执行本项目 e ...
- python数据驱动测试_python数据驱动--Excel维护测试用例
自动化测试经常使用csv文件进行数据驱动测试,读写方法总结如一下 第1步: 学会读取CSV文件 CSV文件.jpg 代码参考.jpg ''' Created on 2018年3月1日 @author: ...
- python使用ddt_使用DDT数据驱动测试框架Python
DDT(数据驱动测试)允许您用不同的测试数据运行一个测试用例,从而使它看起来像多个测试用例. DDT由一个类装饰@ddt(对应您的testcase子类)和两个方法装饰(对于您希望成倍增加的测试)组成: ...
- python 基于ddt实现数据驱动测试
这篇文章主要介绍了python 基于DDT实现数据驱动测试的方法,帮助大家更好的理解和学习使用python,感兴趣的朋友可以了解下 简单介绍 ddt(date driver test),所谓数据驱 ...
- 用Python+Selenium来测试登录自动登录163邮箱
用Python+Selenium来测试登录自动登录163邮箱 1 准备条件 2 程序说明 3 代码 1 准备条件 ① windows系统(也许你是Linux,Mac,自行选择) ②安装了Anacond ...
- python数据驱动:基于ddt的数据驱动测试
一.yaml文件的调用 二.csv文件的数据驱动 三.基于ddt的数据驱动测试 方法1: from selenium import webdriver import unittest from tim ...
- python中selenium中使用ajax_Selenium测试Ajax程序(转)
上周末参加了Qclub的百度技术沙龙,听了百度的孙景卫讲了Web自动化测试,讲的非常好,然后在小组讨论时又有幸座在了一起.我们讨论的一个内容,就是Ajax应用程序比原来的非Ajax程序更不易测试,这里 ...
最新文章
- 变频电源要怎么测定额定容量
- 程序员面试题精选100题(53)-C++/C#面试题(2)
- 报错:SyntaxError: Non-UTF-8 code starting with '\xbc' in file
- 线上活动 | 2020年PM如何提高求职成功率?
- 先进pid控制matlab仿真程序,先进PID控制Matlab仿真第4版-仿真程序-上交
- 浅谈关于nil和 null区别及相关问题
- python色标_Python: 气象绘图实例之台风
- 酷炫加特技的个人主页
- 使用Apache Commons IO组件读取大文件
- 用一道面试题考察对闭包的理解
- RHEL 7中防火墙的配置和使用
- matlab 匹配滤波相位谱,信号检测与估计知识点总结(2)
- 去哪里找自媒体视频剪辑中的素材?
- 服务器系统怎么安全驱动精灵,服务器驱动精灵
- sqlite库学习(7)sqlite读取
- 响应“上上下下左左右右”按键键事件 “按两次返回键退出”
- Windows11自带壁纸位置
- 如何创新与加强个人领导力
- 亚信安全与新华三达成战略合作联手打造“更安全”的云数据中心
- 西门子SMART200 通过Modbus 读取温湿度传感器数据实例
热门文章
- Leetcode题库 11.盛水最多的容器(双指针法 C实现)
- 运算符重载(加减运算符、前置加加(减减)后置加加(减减)运算符、赋值运算符、输入输出运算符、关系运算符、函数调用)
- java properties 路径问题_Java 读取Properties文件时应注意的路径问题
- 永磁同步电机三相等效电路图_基于MTPA的永磁同步电动机矢量控制系统分解
- springmvc登路示例(注解)
- 比MySQL快6倍 深度解析国内首个云原生数据库POLARDB的“王者荣耀”
- PHP程序员的技术成长规划(转载)
- Linux 命令 - jobs: 显示后台作业的状态信息
- [网摘]关于产品运营
- 象棋中常用的最小值最大值算法及剪枝算法