Robotframework自定义库--读写本地的.txt文件

RF是一个非常强大的框架,基于关键字驱动,使用方便,还可以自定义我们自己的库来扩充使用

自定义库结构: 


_init_.py为初始化文件

# -*- coding: utf-8 -*-
'''
Created on 2017年11月3日

@author: yfk
'''
from mymethod import MyMethod
from version import VERSION

_version_ = VERSION

class IOLibrary(MyMethod):
    ROBOT_LIBRARY_SCOPE = 'GLOBAL'

注意这里的类名一定要和自己的库名称一致,圆括号里面的继承类名就是你写的mymethod.py这个主体文件名。

文件开头导入你要使用的模块


version.py,版本控制文件,也可以不要这个

# -*- coding: utf-8 -*-
'''
Created on 2017年10月20日

@author: yfk
'''
VERSION = '1.0'

mymethod.py文件为你需要写的一些方法,包含了读和写两个方法

# -*- coding: utf-8 -*-
'''
Created on 2017年10月20日

@author: yfk
'''
import os
import sys
reload(sys)
#sys.setdefaultencoding('utf8')
class MyMethod(object):
    def __init__(self):
        pass
    def write_file(self,str): 
        '''
        '''
        f1 = open('write.txt','a')
        f1.writelines(str)
        f1.flush()
        f1.close()
    def read_file(self,filename):
        file_list = []
        '''
        example:filename = 'E:\\eclipse-workspace\\Unittest\\IOLibrary\\write.txt'
        return a list
        '''
        with open(filename,'r') as read_file:
            while True:
                line = read_file.readline().strip()
                file_list.append(line)
                if not line:
                    break
                    pass
        #remove ''
        for x in file_list:
            if x == '':
                file_list.remove('')
                file_list.strip()
            
        return file_list
        
               
#if __name__ == "__main__":
#   MyMethod().write_file(['werwerwe\n','hello world\n','mark\n'])
#   L = MyMethod().read_file('E:\\eclipse-workspace\\python_test\\IOLibrary\\write.txt')
#    print(L)

三个文件放在一个文件夹里面命为IOLibrary作为库名,命名规范即可,做到见名知义

该自定义库拷贝到D:\Python27\Lib\site-packages下,在RF用导入Library的方式导入即可。


你可能感兴趣的:(robotframework)