首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >可测试文档

可测试文档
EN

Software Engineering用户
提问于 2019-11-11 17:38:43
回答 2查看 296关注 0票数 5

我正在创建一个库,我想提供一个关于如何使用这个库的教程。这样的教程将包含代码片段作为使用示例;因此,我想测试这些代码段以确保代码是正确的。

如何在文档中测试示例?

我正在考虑将文档文本与传统的单元测试交织在一起,但我所有的想法似乎都缺乏优雅。一种选择可能是将phpdoc注释添加到测试中,然后以某种方式创建源代码的web/可打印版本。另一种方法可能是引用Markdown文档中的测试片段。无论哪种方式,都需要某种工具来将事物组合在一起,我更愿意使用现有的工具。

这个库是用PHP编写的,它使用PHPUnit进行测试,但是不管使用哪种语言,我都在寻找灵感。

(注意:我最初在堆栈溢出上已发布了这个问题,但它并不适合这里。)

EN

回答 2

Software Engineering用户

回答已采纳

发布于 2019-11-11 22:11:38

我记得有两个流行词:

  • 识字编程 --将代码(也是产品)和它的全面可读的描述混合在一起的更通用的方法.对于许多编程语言来说,有一些工具可以将文本格式化为丰富的文本文档,或者提取用于编译和执行的代码。我也可以在php中找到一些,尽管我不确定它们有多可靠。您可以使用这种技术实现您的系统。
  • 博士考试 -基本上和您描述的一样,很久以前就已经作为python标准库的一部分实现了。您可以编写片段作为记录注释的一部分,它们将通过以特殊方式调用您的模块来执行。同样,google也知道这个概念的一些php实现。
票数 4
EN

Software Engineering用户

发布于 2019-11-11 18:22:23

我想你要找的是行为驱动开发

BDD在很大程度上是通过使用一种简单的领域特定语言(DSL),使用能够表达行为和预期结果的自然语言结构(例如,英语类句子)来实现的。测试脚本长期以来一直是DSL的一个流行应用程序,具有不同程度的复杂程度。

在这种情况下使用的工具的一个例子是黄瓜,编写规范所用的语言称为格尔金

本质上,目标是产生同样是可运行的测试脚本的需求。

票数 1
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/400918

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档