BNF文法を自動的に悪用するためのテストケースを生成します
質問
BNFの文法を与えられたツールやテクニックがあるのではないかと思っています。 調整します それはランダムに(ただしインテリジェントに)、BNFを超えてスリップするケースを検出するために使用するための出力のストリームを生成します(ただしそうすべきではありません)。
編集: ファズテスト 言い換えればパーサー。
ありがとう
解決
Googleで優しい時間を過ごすと、自動化された文法ベースのファズテストは 難しい, 、および現在の研究の主題。特に、Microsoft ResearchのP. Godefroidは、Sageと呼ばれるソフトウェアに取り組んでいます。
私は彼から研究論文を掘りました。
自動ホワイトボックスファズテスト (Michael Y. LevinおよびDavid Molnarとの共同作業)NDSS'2008の議事録(ネットワークおよび分散システムセキュリティ)、151〜166ページ、サンディエゴ、2008年2月。
XMLベースも見つけました 桃 ソフトウェアですが、セキュリティ以外のアプリケーションのために午後の仕事でそれを活用する方法をカジュアルに読むことで私には不明です。
だから私の結論は次のとおりです。 「それは現在の(10月)研究の主題であり、迅速なツールはありません」。
他のヒント
厳密にはBNFファジングツールではありませんが アメリカのファジーロップ 人工知能の方法を採用し、BNFの知識の欠如を非常にうまく歩き回ることができます。すでに多くのオープンソースパーサーでバグが見つかったため、あなたのための適切なツールでもあるかもしれません。
所属していません StackOverflow