针对c语言的程序,有啥好的测试工具
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了针对c语言的程序,有啥好的测试工具相关的知识,希望对你有一定的参考价值。
用c语言编写出的程序,用哪个测试软件比较有针对性。
我是黑盒,但是想转入白盒。对编程正在学习和摸索中。如果有推荐好的工具,最好给出下载地址。谢谢
Parasoft白盒测试工具集
Jtest Java 代码分析和动态类、组件测试
Jcontract Java 实时性能监控以及分析优化
C++ Test C,C++ 代码分析和动态测试
CodeWizard C,C++ 代码静态分析
Insure++ C,C++ 实时性能监控以及分析优化
其它公司
.test .Net 代码分析和动态测试
logiscope c/c++ Verlog公司的静态、动态分析工具
还有testbed、Cantata c/c++等
Rational工具集中的puricoverage和purify、quantify
Compuware白盒测试工具集
BoundsChecker C++,Delphi API和OLE错误检查、指针和泄露错误检查、内存错误检查
TrueTime C++,Java,Visual Basic 代码运行效率检查、组件性能的分析
FailSafe Visual Basic 自动错误处理和恢复系统
Jcheck M$ Visual J++ 图形化的纯种和事件分析工具
TrueCoverage C++,Java,Visual Basic 函数调用次数、所占比率统计以及稳定性跟踪
SmartCheck Visual Basic 函数调用次数、所占比率统计以及稳定性跟踪
CodeReview Visual Basic 自动源代码分析工具
Xunit白盒测试工具集
Aunit Ada http://www.libre.act-europe.fr
CppUnit C++ http://cppunit.sourceforge.net
ComUnit VB,COM http://comunit.sourceforge.net
Dunit Delphi http://dunit.sourceforge.net
DotUnit .Net http://dotunit.sourceforge.net
HttpUnit Web http://c2.com/cgi/wiki?HttpUnit
htmlUnit Web http://htmlunit.sourceforge.net
Jtest Java http://www.junit.org
JsUnit(Hieatt) javascript 1.4以上 http://www.jsunit.net
phpUnit Php http://phpunit.sourceforge.net
PerlUnit Perl http://perlunit.sourceforge.net
XmlUnit Xml http://xmlunit.sourceforge.net
DUnit .net
JUnit java
参考资料:http://www.chinaitlab.com/softtest/tool/200704/718617.html
参考技术A 测试分类很多,主要分为黑盒测试和白盒测试,作为一个软件工程师,要对你自己的程序绝对的清楚了解。因此建议白盒测试。至于测试工具现在比较好的有很多很多,你打可以上网上去找(非常多!!!)给你推荐我用的3个CUnit,ParCT,Visial Unit...其他的就得你自己去探索了。 参考技术B 白盒测试工具 CUnit并行操作的C语言程序测试工具——ParCT(parallel C- language testing tools)目前只能适用于进程内部的控制流测试
主要是这两种了。 参考技术C 必须Visial Unit! 参考技术D gdb 第5个回答 2008-11-06 gdb
www.gnu.org/gdb
有啥好的工具可以重构 Perl Web 代码吗? [关闭]
【中文标题】有啥好的工具可以重构 Perl Web 代码吗? [关闭]【英文标题】:Is there any good tool to refactor Perl web code? [closed]有什么好的工具可以重构 Perl Web 代码吗? [关闭] 【发布时间】:2010-10-04 21:31:53 【问题描述】:我目前正在开发一种 perl 网络应用程序 LAMP 样式,最近偶然发现了一些以前的开发人员留下的代码死亡迷宫。他留下了这么多神奇的数字和奇怪的逻辑,每次我必须通过它都让我头疼。
我现在正在学习单元测试,所以我想找到一些有用的工具来重构代码并编写单元测试,以确保我不会意外破坏任何东西。
对于 LAMP perl 的任何好的重构工具有什么推荐吗? 最好是免费的:)
谢谢。
【问题讨论】:
【参考方案1】:我认为Eclipse / EPIC 有“一些”Perl 重构工具...但不要引用我的话 ;-)
可能也值得一试Komodo。但是完整版不像 Eclipse / EPIC 那样免费。你可以试试他们的开源版本Komodo Edit,但我猜它不具备所有功能?
我没有使用上述或任何其他重构工具...我使用 vi/vim 和 TextMate 编辑器以及它们提供的内容(或者到目前为止我在这些编辑器中找到的内容!)。
进行单元测试是一个好的开始。还可以看看perltidy / Perl::Tidy 和Perl::Critic,这可能有助于通过混乱来寻找一些“代码气味”。
【讨论】:
EPIC 允许您将代码块转换为子例程,但据我所知,它不会让您重命名例程或变量。我等不及他们添加此功能...我已经厌倦了搜索和替换! 我认为 Padre:padre.perlide.org/howto.html 具有词法重构(在此页面中搜索“重构”)。我还没有尝试过这个工具,但我打算!它看起来仍处于早期(但至少目前是活跃的)开发阶段。 刚刚试用了 Padre,重构工作不正常。您要么收到“未知错误”,要么无法真正重命名所有出现的变量。【参考方案2】:请参阅 Devel::Refactor - 重构 Perl 代码的 Perl 扩展。 https://metacpan.org/pod/Devel::Refactor
【讨论】:
【参考方案3】:虽然它并没有真正进行深度重构,但 PerlMonks node 描述了几个 Vim 映射,用于使用 B::Deparse 对 perl 代码进行反混淆。
他们的例子:
在普通模式下,当您的光标在该行上时,您可以输入_d
:
--$|&&s|\n|-|;
...它将被替换为:
s/\n/-/ if --$|;
还有这一行:
$foo and $bar or $baz = 1;
... 将被替换为:
$baz = 1 unless $foo and $bar;
【讨论】:
【参考方案4】:Padre 有一些重构工具。 重命名变量在一段时间内(两年左右)效果很好。
http://padre.perlide.org/
免责声明:我是 Padre 的贡献者。
【讨论】:
【参考方案5】:带有 EPIC 插件的 Eclipse 确实有一些重构支持。不像 IntelliJ 对 Java 工具的重构那么复杂。不是 100% 确定它会帮助您解决问题。我使用它的方式是突出显示代码块并将它们移动到函数/方法中。在您的情况下,您可能需要对这些神奇数字进行大量搜索/替换...
我假设您将使用 Test::More 来编写单元测试。其他一些 EPIC 工具可以帮助解决这个问题(例如“todo”标签)。
您还可以使用 Test::WWW::Mechanize 和 Test::WWW::Selenium -- 在您的情况下定义 selenium 测试以确保您不会破坏任何最终用户功能会很有用。虽然 EPIC 没有任何特别的帮助,但它应该可以在调试时使用它来逐步执行代码。
祝你好运。 :-)
【讨论】:
【参考方案6】:Perl 的动态特性意味着很难为其创建重构工具。
但是,在测试方面,您应该能够组合一些回归测试来帮助您顺利进行。这通过从现在的代码开始并捕获其当前输出来工作。这可能是从命令行运行 CGI 脚本并将生成的 HTML 保存到文件中。
捕捉到这一点后,您可以更改代码,并在检查时检查 HTML 是否未更改,这意味着代码没有损坏。当确实发生更改时,您可以找到错误,或者更改测试以接受新的 HTML 为正确的。
设置起来可能有点繁琐,但从长远来看会让您的生活更轻松。您应该尝试自动化这些测试以使其易于运行。 Checkout Test::WWW::Mechanize 和 Test::LongString 以及所有其他的。
【讨论】:
【参考方案7】:vim
! (或任何其他文本编辑器)
真的没有一个神奇的工具可以重构你的代码,有一些工具可以(例如)重命名变量/函数,但它无法神奇地修复可怕的代码结构或奇怪的逻辑。
【讨论】:
好吧,我一直在寻找可以帮助我识别用于重构的不良代码气味的工具等:)【参考方案8】:Refactor :my => 'code' 上的志愿者可能会为您提供帮助。无论如何,请随意询问:)
【讨论】:
这看起来很有趣。 +1 提醒我们注意!以上是关于针对c语言的程序,有啥好的测试工具的主要内容,如果未能解决你的问题,请参考以下文章