能够用来开发Python Lib的IDE工具备不少,常见的有Pycharm,Eclipse with PyDev插件等,并且在RobotFramework官网中也已经提供了RobotFramework-EclipseIDE插件,能够支持Eclipse,插件的访问地址为https://github.com/NitorCreations/RobotFramework-EclipseIDE,能够经过该地址下载插件。html
在这里咱们以Eclipse with PyDev插件的形式来构建一个Lib,能够从http://www.pydev.org/下载对应的插件,也能够经过eclipse在线安装的方式进行安装,在线安装安装地址:http://www.pydev.org/updatespython
启动eclipse后,点击eclipse菜单Help->Install New Software...,在弹出的对话框中,点击Add按钮, Name中填:Pydev, Location中填http://pydev.org/updatesgit
点击OK后,能够看到供安装的插件选项,这里咱们选择所有安装。github
而后点击下一步,等待安装完成便可。数据库
安装完成后,须要在eclipse中配置Python解释器,在Eclipse菜单栏中,点击Windows ->Preferences. 在对话框中,点击pyDev->Interpreter - Python. Interpreters 点击New按钮, 选择python.exe的路径, 打开后显示出一个包含不少复选框的窗口. 点OKapi
插件配置完成后,咱们就可使用eclipse来构建一个python项目,这里咱们新建一个ExcelLibrary项目,Project name 中输入ExcelLibrary,而后点击Finish完成项目建立。app
在Lib项目建立完成后,咱们就能够编写本身的Lib了,这里咱们编写一个从Excel中读取数据的Lib示例。框架
# -*- coding: utf-8 -*- ''' 导入操做excel须要第三方的xlrd Library ''' import xlrd ''' 引入robotFramework的日志输出logger ''' from robot.api import logger ''' 定义一个python class ''' class ExcelUtil(): def __init__(self): return ''' 打开一个excel 文件 ''' def open_excel(self,excelfile): try: data = xlrd.open_workbook(excelfile) return data except Exception,e: logger.error(e) ''' 获取excel中的数据方法,经过参数指定须要读取的excel文件名和sheetname ''' def get_excel_bysheetname(self,excelfile,lineindex=0,sheetname='Sheet1'): data = self.open_excel(excelfile) sheet = data.sheet_by_name(sheetname) rows = sheet.nrows linedata = sheet.row_values(lineindex) list = [] for rownum in range(1,rows): row = sheet.row_values(rownum) if row: app = {} for j in range(len(linedata)): app[linedata[j]] = row[j] list.append(app) return list
示例代码中,定义了函数get_excel_bysheetname来获取excel中的数据,能够经过参数来指定须要获取excel哪一个sheet中的数据,获取到的sheet数据最终以list的形式返回。List中的每一条记录都是以python中的字典形式存储进去。eclipse
咱们能够调用一下咱们写的lib是否能够正常使用,在RIDE中,咱们导入刚刚写的Lib。函数
而后经过RIDE中F5快捷键,能够看到咱们自定义的关键字。
导入后,咱们能够经过一个测试案例调用一下,而且将结果以log形式输出。
${list} Get Excel Bysheetname E:\\task.xls
log ${list}
执行结果:
【原文归做者全部,欢迎转载,可是保留版权,而且转载时,须要注明出处】
Robot Framework自动化测试框架核心指南电子版试读
相关博文汇总:
RobotFramework下的http接口自动化Create Http Context关键字的使用
RobotFramework下的http接口自动化Get关键字的使用
RobotFramework下的http接口自动化post关键字的使用
RobotFramework下的http接口自动化Get Response Body关键字的使用
RobotFramework下的http接口自动化Get Response Status 关键字的使用
RobotFramework下的http接口自动化Get Response header 关键字的使用
RobotFramework下的http接口自动化Set Request Header 关键字的使用
RobotFramework下HttpLibrary库其它关键字
RobotFramework下的http接口自动化Set Request Body 关键字的使用
RobotFramework下的http接口自动化Follow Response关键字的使用
RobotFramework自动化测试框架的基础关键字(一)
RobotFramework自动化测试框架的基础关键字(二)
RobotFramework自动化测试框架的基础关键字(三)
RobotFramework自动化测试框架的基础关键字(四)
RobotFramework自动化测试框架的基础关键字(五)
RobotFramework自动化测试框架-移动手机自动化测试AppiumLibrary介绍
RobotFramework自动化测试框架-移动手机自动化测试Open Application关键字的使用
RobotFramework自动化测试框架-经常使用断言关键字
RobotFramework自动化测试框架-移动手机自动化测试AppiumLibrary库其它的常见自动化关键字
RobotFramework自动化测试框架-移动手机自动化测试Input Text和Click Button关键字的使用
RobotFramework自动化测试框架-移动手机自动化测试Clear Text关键字的使用
RobotFramework自动化测试框架-移动手机自动化测试Click Element关键字的使用
RobotFramework自动化测试框架-移动手机自动化测试Click A Point关键字的使用
RobotFramework自动化测试框架-移动手机自动化测试Click Element At Coordinates关键字的使用
RobotFramework自动化测试框架-移动手机自动化测试Get Element Location关键字的使用
RobotFramework自动化测试框架-移动手机自动化测试Get Network Connection Status和Set Network Connection Status关键字的使用
RobotFramework自动化测试框架-移动手机自动化测试Element Attribute Should Match关键字的使用
RobotFramework自动化测试框架-DatabaseLibrary库的使用(对数据库的操做)
RobotFramework自动化测试框架-使用Python编写自定义的RobotFramework Lib
RobotFramework自动化测试框架-Selenium Web自动化(-)-Open Browser和Close Browser