目录
一、搭建环境
1.已安装python
2.已安装Robot Framework
3.Mac电脑
搭建环境的详细过程,可详见另一篇博客:https://blog.csdn.net/weixin_42636632/article/details/109549257#2.%E5%AE%89%E8%A3%85RobotFramework
可通过命令robot --version查看,安装的环境,例如:
jdbk@jdbkdeMacBook-Pro ~ % robot --version
Robot Framework 3.2.2 (Python 3.7.7 on darwin)
二、创建用例
1、创建文件 helloworld.robot ,编辑文件如下并保存
*** Test Cases ***
HelloWorld
log Hello World!
三.执行用例
pybot helloworld.robot
但报“没有发现pybot命令”的错误:
zsh: command not found: pybot
四、问题排查
1.按照通用的解决方案,将bash shell 中.bash_profile 全部环境变量加入zsh shell中,执行如下操作:
step1:家目录中打开.zshrc文件
cd ~
open .zshrc
step2:找到 “# User configuration”加入如下内容后保存
source ~/.bash_profile
示意如下图
step3:重载资源
source .zshrc
重新执行用例,却依然报相同的错误,通用解决方案并未生效,那pybot命令是不是可能就不存在呢?
2.进入安装python的bin目录下,检查pybot文件的有无
jdbk@jdbkdeMacBook-Pro robotframework % cd /Library/Frameworks/Python.framework/Versions/3.7/bin
jdbk@jdbkdeMacBook-Pro bin % ls
2to3 img2png pygmentize pyvenv
2to3-3.7 img2py pyshell pyvenv-3.7
__pycache__ img2xpm pyslices pywxrc
chardetect jsonpath.py pyslicesshell rebot
easy_install-3.7 pbr python ride.py
f2py pip python3 ride_postinstall.py
f2py3 pip3 python3-config robot
f2py3.7 pip3.7 python3.7 wxdemo
helpviewer pycrust python3.7-config wxdocs
idle3 pydoc3 python3.7m wxget
idle3.7 pydoc3.7 python3.7m-config
查询结果证明,的确不存在pybot文件,难怪找不到该命令~
3.为何安装了Robot Framework,却无pybot命令呢?
查询结果原来是:Robot Framework 3.1版本开始,将pybot脚本移除了,需要使用通用的robot/reboot工具
https://stackoverflow.com/questions/53932273/not-getting-pybot-file-after-installing-robot-framework
五、重新执行用例
方式一:运用robot命令
step1:查询robot命令的使用方式
jdbk@jdbkdeMacBook-Pro bin % robot --help
Robot Framework -- A generic automation framework
Version: 3.2.2 (Python 3.7.7 on darwin)
Usage: robot [options] data_sources
or: python -m robot [options] data_sources
or: python path/to/robot [options] data_sources
or: java -jar robotframework.jar [options] data_sources
...
...
...
step2:robot命令执行用例
jdbk@jdbkdeMacBook-Pro robotframework % robot helloworld.robot
==============================================================================
Helloworld
==============================================================================
HelloWorld | PASS |
------------------------------------------------------------------------------
Helloworld | PASS |
1 critical test, 1 passed, 0 failed
1 test total, 1 passed, 0 failed
==============================================================================
Output: /Users/jdbk/dmg/robotframework/output.xml
Log: /Users/jdbk/dmg/robotframework/log.html
Report: /Users/jdbk/dmg/robotframework/report.html
结果:成功运行,PASS:说明用例执行通过。
同时会在执行目录下生成三个文件:
-
output.xml 输出结果报告,主要用于机器展示,比如集成到Jenkins中展示。
-
report.html 执行结果报告
-
log.html 执行过程的详细日志
方式二、运用rebot命令
step1:查询rebot命令的使用方式
jdbk@jdbkdeMacBook-Pro robotframework % rebot --help
Rebot -- Robot Framework report and log generator
Version: 3.2.2 (Python 3.7.7 on darwin)
Usage: rebot [options] robot_outputs
or: python -m robot.rebot [options] robot_outputs
or: python path/to/robot/rebot.py [options] robot_outputs
or: java -jar robotframework.jar rebot [options] robot_outputs
...
...
...
查询结果可见,rebot命令的执行依赖于robot_outputs,那reboot命令则是对Robot Framework用例执行后生成的output.xml进行再次处理。那其应用场景可能是:
-
执行上一次的用例
-
执行保存的其他用例output.xml结果
step2:rebot命令执行用例
jdbk@jdbkdeMacBook-Pro robotframework % rebot output.xml
Log: /Users/jdbk/dmg/robotframework/log.html
Report: /Users/jdbk/dmg/robotframework/report.html
结果:成功运行,此次重新生成了执行过程的详细日志log.html和执行结果报告report.html