测试工作需要用到了RobotFramework,之前只是使用,用了一段时间后,决定深入研究一下它。使用平台为Windows + Linux。由于是基于Linux 系统方面的测试工作,使用的RobotFramework版本为2.8.5
先简单介绍一下Robot中的一些概念
关键字(Keyword): 分为内部关键字和用户关键字。
内部关键字顾名思义为Robot内置的部分关键字,例如Should Be Equal,Run Keyword 等等
用户关键字,开发人员或者测试人员自行通过内部关键字组合 OR 采用外部代码导入构成的关键字
资源(Resource): 关键字的组合包,例如将多个关键字放在一个文件里,这个文件在Robot里可以称为一个资源
库(Library): Robot支持很多库,分为内置和外置,内置的如Collections等,外置的,可以是python写成的文件,java写成的文件,以及通过xml-rpc导入的远程库,这些库一般都是通过代码写成
用例(Case):多个关键字的组合,顺序 or 带分支控制等组成的文件为Case
Suite:可以理解为多个用例的组合,一个suit 文件下可以写多条用例。
Windows的入口文件为pybot.bat
Linux的入口文件为pybot
由上图可以知道,robot的入口文件为robot\run.py(可以查看robot\__init__.py中代码可知)
看一下run_cli()和run()的区别
从上图和下图的代码看,run_cli调用的是RobotFramework类下的execute_cli方法,run调用的是RobotFramework类下的execute方法,不同的是execute_cli多了一些参数解析的操作,所以推荐当代码中调用的时候,使用run_cli,而当工具