负责加载测试脚本文件,模块代码路径./src/robot/parsing/
一、解析逻辑
我们以keyword_driven.robot测试脚本为例,入口点是./src/robot/parsing/model.py的TestData()
函数,分析其中的解析过程。
1.1 表格解析器
TestCaseFile
构造函数中会实例化四个表格对象:设置表格、变量表格、测试用例表格、用户关键字表格,并在populate()
函数中调用FromFilePopoulator(self).populate(self.source)
;- 打开脚本文件,并从路径中获取后缀名,再到
READERS
字典获取到对应的文件格式读取器; TxtReader
继承了TsvReader
,读取出文件中的每一行;TxtReader
根据定义的格式将一行字符划分成列(cells),其分隔符为两个既以上的空格,“|”也是分隔符;DataRow</