本项目旨在为beakerlib测试提供自动化文档生成工具。

bkrdoc的Python项目详细描述


BKrDOC < BR>
本项目旨在为beakerlib测试提供自动化文档生成工具。
1。介绍
1.1什么是bkrdoc? < BR>
bkrdoc是使用beakerlib库编写的测试的文档生成器。这个生成器从测试代码中生成文档,包括或不包括任何文档标记。
1.2有什么好处? < BR>
用于快速、简短和可靠的文档创建。这对快速启动未知的beakerlib测试是有好处的。创建的文档提供有关文档可信度的信息。创建的文档还显示环境变量,并帮助读者运行从中创建文档的测试脚本。 < BR>
bkrdoc是用纯python编写的。
1.3什么是beakerlib? < BR>
beakerlib是一个shell级集成测试库,提供了方便的功能,简化了集成和blackbox测试的编写、运行和分析。 < BR>
https://fedorahosted.org/beakerlib/
1.4 BKRDOC如何获得许可? < BR>
BSD许可证。请参阅分发版中的许可证文件。
1.5联系方式 < BR>
如果您对BKRDOC项目有任何疑问,请随时给我发送电子邮件(kulda12@seznam.cz)。
2。安装
2.1先决条件 < BR>
bkrdoc在linux上的python 2.7和3.3版本上进行了测试。
bkrdoc没有外部依赖项。 < BR>
2.2安装过程 < BR>
安装非常简单。你有两个选择。首先是从bkrdoc pypi下载rpm并轻松安装它。第二个选择是下载整个项目,然后在bkrdoc文件夹中运行setup.py脚本。要执行setup.py文件,需要运行这个标准的python setup.py install命令。
3。使用
3.1基本用法 < BR>
安装bkrdoc rpm之后,您可以在命令行中键入bkrdoc来轻松运行bkrdoc。在这些示例中可以看到: < BR>
用于分析:
bkrdoc分析[分析选项][比克里布测试.sh] < BR>
对于标记:
bkrdoc标记[标记选项][beakerlib_test.sh] < BR>
3.2文档标签 < BR>
首先重要的是,所有文档注释必须以@开头。例如,此代码注释生成临时目录并保存其中的工作将创建此文档行:生成临时目录并保存其中的工作。 < BR>
如果文档注释位于beakerlib阶段、函数、循环或条件之前,则此注释将被视为描述。你可以看到这个例子会发生什么: < BR>
@各种类型的参数将开始此部分
rlphaseStartTest"各种参数类型" < BR>
@对于所选单词中的每个参数都可以…
对于arg in disabled enabled enabled no yes no yes 0 1 做某事
@报告参数
rlrun"abrt自动报告$arg"
完成
@报告完成
相位 < BR> 结果: < BR>
测试"各种参数类型"
各种类型的参数将开始此部分
循环:对于选定单词中的每个参数…
报表参数
报告完成 < BR>
在每个生成的文档顶部有三行,包括描述、作者信息和测试关键字。这三行是从测试模板生成的。但是,可能会出现模板丢失或您希望添加更多数据的情况,您可以使用以下标记:@keyword、@key、@author和@description。例如:35;@key httpd会将key添加到keywords行中: < BR>
说明:简单测试
作者:Jan Kresla
关键词:httpd < BR>
标记的生成器还支持块注释。每个块注释必须以35;@开头,如您在本例中看到的: < BR>
测试开始时
可能是任何东西
@创建临时目录并将工作保存在其中
相位启动塔普
tmpdir=$(mktemp-d)
推送$tmpdir
相位 < BR>
将产生: < BR> 安装程序
测试开始时
可能是任何东西
创建临时目录并保存其中的工作 < BR>
有用的特性是bkrdoc generator可以使用现有的beakerlib命令注释,如下例所示: < BR>
rlphaseStartSetup(相位启动设置)
rlrun'ps aux''ps命令不应回溯'#@
rlrun'ps aux''ps命令不应回溯'@check for traceback
相位 < BR>
将复制: < BR> 安装程序
ps命令不应回溯
检查是否有回溯 < BR>
标记版本还支持初始注释作为全局整体测试注释。此初始注释或块注释必须在shebang之后(也可以在烧杯向导所做的测试描述之后),并且通常必须以@开头。下面是一个小例子: < BR>< BR>/usr/bin/env bash文件 < BR>
@这是初始文档注释的第一行
@第二行
@第三行 < BR>
包="httpd"
httpdpages="/var/www/html"
httpdlogs="/var/log/httpd" < BR>< BR>< BR>
将复制: < BR>
说明:
作者:
目的:这是初始文档注释的第一行
第二行
第三行
关键词: < BR>< BR>< BR>
4。包装内容 < BR>
下载bkrdoc项目后,您将看到以下文件和目录: < BR>
readme.md:此自述文件。 < BR>
许可证:具有bkrdoc许可证的文件。 < BR>
bkrdoc/:带有bkrdoc generator的文件夹,该文件夹从带有或不带有任何文档标记的beakerlib测试创建文档。 < BR>
bkrdoc/analysis/:包含源的文件夹,用于不带文档标记的自动文档生成器 < BR>
bkrdoc/markup/:带有文档标记的自动文档生成器源的文件夹 < BR>
示例/:此文件夹包含一些beakerlib测试和生成的文档 < BR>
docs/:文件夹包含todo选项和第一个文档格式。 < BR>
tests/:文件夹包含用于bkrdoc测试的文件
5。CI状态 < BR>
travis ci自动测试bkrdoc

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
在OSGI中使用cxf生成的客户端时出现Java类装入器问题和JaxB异常   java为什么要在javamail中迭代多部分电子邮件中的部分?   并发编程问题   JFileChooser&&System中未调用java windowClosing。退出功能不正常?   SQL查询的java语法分析   java如何使用AspectJ声明字段上的警告   什么是java向量。元素()C#等价物   java解析Android应用程序中tornado web服务中的CSV文件   java我试过c2dm,我需要服务器端   java调整JPanel大小以适应新的JLabel图标   Java与Python脚本的通信   java使用Saxon通过XSLT生成URL   java net::ERR_complete_CHUNKED_编码200(OK)来自struts应用程序中的tomcat   java如何为我的窗格设置不同的位置?   java使用Cypher Neo4j获取给定类型的所有节点(从SQL世界中的tablename中选择*)   nio使用Java解析文件值   java使用WSDL生成REST客户端会是错误的方向吗?   java如何在我的应用程序中构建类映射?   java按钮。setEnabled在第一个循环中不起作用   xPath适用于最后一页,但不适用于第一页