testing - 自动生成测试用例以滥用 BNF 语法

标签 testing bnf fuzzing

我想知道是否有一种工具或技术可以在给定 BNF 语法的情况下随机(但智能地)调整它并生成输出流以用于检测超出 BNF 的情况(但不应该)。

编辑:Fuzz testing换句话说,一个解析器。

谢谢

最佳答案

在 Google 上花了一些时间,我发现基于语法的自动化模糊测试很难,并且是当前研究的主题。特别是,微软研究院的 P. Godefroid 正在开发一款名为 SAGE 的软件。

我翻出了一篇他的研究论文。

Automated Whitebox Fuzz Testing (与 Michael Y. Levin 和 David Molnar 合作)NDSS'2008 session 记录(网络和分布式系统安全),第 151-166 页,圣地亚哥,2008 年 2 月。

我还找到了基于 XML 的 Peach软件,但在随意阅读时我不清楚如何在一个下午的工作中利用它来开发非安全应用程序。

所以我的结论是:“这是当前(2010 年 4 月)研究的主题,并且没有快速使用的工具”。

关于testing - 自动生成测试用例以滥用 BNF 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2702438/

相关文章:

c - 易受模糊测试影响的小型 C 应用程序(并提供源代码)

c - 使用 C 使用 libFLAC 解码数据

javascript - JavaScript 中的随机对象生成器

java - JUnit 4 与 TestNG 6

javascript - Cypress.io - 使用 JavaScript window.prompt 保存值

grammar - 发现不明确的 BNF

parsing - 自动检测/解析 Python 中的表格

unit-testing - PHPUnit 测试 file_get_contents

java - 共享变量的测试方法

pdf - PDF 1.7 的语法。 (BNF 或变体)