• Python 学习笔记21 CMD执行测试用例


    使用CMD命令执行测试用例

    当我们在ride中设计好测试用例后,我们可以使用ride的界面工具来选择和运行测试用例。

    系统也会提供比较好的报告和日志的浏览功能。

    但是这样的自动化,毕竟是需要手工介入的。通常,我们是希望能够和Jenkins等配置管理工具结合,实现代码发布,测试自动化运行。

    Jenkins本身提供了插件来管理和运行robotframework架构,这里介绍下怎么使用robot工具,通过命令行来管理和运行相应的用例。

    其实方法很简单,首先我们打开cmd窗口,输入 robot 命令:robot

    如果robot安装正常,他会抛出下列的错误信息:

    根据提示信息,我们在命令中加入 --help来获取帮助: robot --help:

    系统会给出所有robot有关的帮助文档:

    里面的内容很多,我们也可以将其输出到本地文件中: robot --help > D: obothelp.txt。

    这样我们在文件中预览相关内容会比较方便。

    我们经常会用到的一些参数如下:

    --test name *   选择执行那些测试用例,这里的参数是用例的名字。

    --suite name *    选择执行那些test suite,该参数会和 --test --include --exclude配合使用,过滤出那些用例需要执行。

    --include tag *       选择运行那些tag的测试用例,它支持正则表达式,可以使用 *,?来替代用例的名称。 还可以使用 AND,OR,Not等操作符。 例如 --include smoke --include BVT; --inlcude smokeANDB*等等。

    --exclude tag *   选择不执行那些tag的测试用例。

    --outputdir dir     选择输出的日志和报告的文件夹路径。

    --output file     设置输出的文件路径,默认是一个XML文件。

    --log file        设置输出HTML的log文件, 可以用NONE来关闭,不推荐。
    --report file              设置输出HTML report 文件,也可以使用NONE来关闭,不推荐。 默认文件名字为 report.html。

    --timestampoutputs  如果使用了该选项,他会在输出的文件名中间加上一个时间戳 格式为 YYYMMDD-hhmmss。

    --maxerrorlines lines 该参数用来设置在报告中,显示多少行错误信息。默认是40行,最小是10行。使用参数NONE,则会显示所有错误信息。

    --loglevel level   设置log的输出级别, 默认有TRACE,DEBUG, INFO (default), WARN, NONE (no logging)。 例如 --loglevel DEBUG  --loglevel DEBUG:INFO

    根据文档,我们基本上可以使用以下格式来用命令启动robot执行用例: robot --options(参数) robot文件目录。 

    其中文件目录如果是具体到了robot文件,那么只会执行该文件中的相关用例。

    还可以同时执行多个文件, 比如 robot d:smoke.robot, e:BVT.robot.

    如果路径是个文件夹,robot会执行该目录下的所有robot文件, 比如 project下面有 1.robot, 2.robot, name语句 robot ../project 就是执行1.robothe 2.robot中所有的测试用例。

    在一个demo的测试项目中使用的命令如下:

    robot --include tag demo -d D:demo -o output -l log -r report -T --timestampoutputs --maxerrorlines NONE -L DEBUG D:PUMA_AUTORF_PUMAPUMAdemo.robot

    如果想要再进一步,我的解决方案是,新建了一个ini配置文件,写一个python脚本来解析配置文件,这样只要通过修改ini配置文件,就可以灵活的执行你想要用例或者测试套件。

    当然如果你想要和CI集成, Jenkins本身就有很好的插件支持,有机会我们可以尝试一下。

  • 相关阅读:
    制作一个螺旋矩阵
    通过C++修改系统时间代码
    绝对值最小
    compile cmdow
    2017-10-04清北模拟赛
    2017-10-03清北模拟赛
    2017-10-01清北模拟赛
    HTML容易遗忘内容(二)
    SSM框架关于后台返回JSON数据中显示很多不需要的字段为NULL
    关于Unix时间戳转北京时间的问题
  • 原文地址:https://www.cnblogs.com/wanghao4023030/p/11799459.html
Copyright © 2020-2023  润新知