有谁知道包含浮点计算的C程序的随机生成器?
我正在寻找一些有点像Csmith的东西,除了Csmith不会生成浮点表达式,并且它会产生大量其他构造,使得修改有点困难.生成顺序计算对我来说是一个良好的开端,只要这些包括一些浮点数.条件会更好,但我不需要循环,指针,甚至数组.
由于这么多语言使用类C语法,这样的生成器可能不必特定于C.即使它特定于另一种类C语言,我也许能够将生成的语言文本处理为C程序.
编辑:这是一个Csmith生成的程序的片段,以澄清我在寻找什么.
...
int64_t *l_374 = &g_189;
int32_t l_375 = (-1L);
int i, j, k;
l_375 &= ((g_106 == ((*l_374) = (&g_324[4] == l_373[0][0][5]))) < 0x80C8L);
return (*g_207);
...
Run Code Online (Sandbox Code Playgroud)
我也应该澄清的是,虽然采取了输入csmith程序而代,比方说,int64_t
与float可以给一个语法正确的C程序,它几乎肯定不会给一个定义的程序.我可以测试替换程序是否包含未定义的行为,但这并不便宜,如果我必须拒绝99%的替换程序,因为它们未定义,过程将太慢而无法使用.
是否有可以在WebApplications上执行模糊测试的框架?我知道Selenium并且WebDriver用于构建Web应用程序的测试,但我特别感兴趣的是内置模糊测试的库,框架或项目,因此我不需要重新发明轮子.
例如,我可以从这些功能中受益:
有谁知道实现这些功能的项目?(最好是Java :))
我正在尝试在我正在开发的一个软件中执行一些随机测试.
我有一个用随机值初始化的灯具,因此,每个测试都有不同的输入.
此外,我想要的是多次运行其中一个测试(我希望每次执行时都会随机初始化灯具),是否可以在Google测试中使用?我需要在代码中,而不是使用参数或类似的东西.
我在找invocationCountJUnit之类的东西.
我想知道随机测试和模糊测试之间的关系是什么。我知道随机测试已经存在了很长时间,但我看不出它们之间有任何区别。它们似乎都利用随机输入来查看程序是否进入意外状态(即崩溃)。模糊测试自动化的主要区别是什么?
testing ×3
c ×1
c++ ×1
difference ×1
fuzz-testing ×1
fuzzing ×1
googletest ×1
ieee-754 ×1
javascript ×1
relation ×1