Tag: unit testing

你如何testing你的T-SQL?

你如何testing你的T-SQL? 你使用哪个库/工具? unit testing涵盖的代码百分比是多less?如何测量? 你如何决定首先进行unit testing的模块? 你认为你在unit testing线束上花费的时间和精力是否已经得到了回报? 如果你不使用unit testing,你能解释为什么不呢?

突变检测在实践中是否有用?

你有任何实际应用突变检测的例子吗? 它比简单的testing覆盖工具更好吗? 还是没用? 现实世界中突变检测的优点和缺点是什么?

phpunit – testing是痛苦的缓慢

我在unit testing的世界里越来越深入。 我遇到的一个问题,这是我想要的反馈,当一个运行多个testing套件,也许只是我,但我需要使用参数 – 进程隔离我的testing通过。 我可以单独运行我的任何套件,但没有问题,但是如果我运行时没有使用–process-isolation,那么运行我迄今为止拥有180个断言的6-7套件将会失败。 问题是使用这个参数使testing持续35分钟,而通常的2.5分钟。 这是一个懒惰的等待。 这个问题与使用模拟的DI容器进行特定的testing有关,当testing套件运行链接时容器不能正确地重新初始化。 在DI-Container上设置的静态属性可以testing预期的故障,使得以下套件中的testing失败。 容器有一个参数,可以将包含的对象保存在静态variables中,以便在每次调用时返回相同的实例。 一个变相的单身人士。 而且这在应用程序级别运行良好,这只是一个滋扰testing。 我可以避免这个容器参数,并编写应用程序不使用静态属性,但为方法的缘故避免一个有用的语言结构似乎是矫枉过正。 也许我做错了什么(我真的希望如此!)但是我有一个印象,如果一个人想在每个testing都以干净的状态运行SUTtesting,那么就不会使用–process-isolation。 这使得testing非常耗时,并且从中获得一点乐趣。 我在编码时单独运行套件和testing,并在主要提交之前在后台运行套件,从而绕过了这个问题。 是我正在经历的正常,有没有办法对付这个? 你如何确保testing时间是合理的? 如何处理静态以便不影响testing? 任何洞察赞赏/评论赞赏。

C ++ Jenkins QA Stack / Tools

我们目前正在为您开发C ++开发的QA栈 。 我们已经有多个Jenkins实例在运行,并且与CI和其他语言(如java和php)结合在一起,创造了非常好的体验。 我所要求的是指向可以用于Jenkins的C ++开发的工具链。 更具体 (大括号中的java / php示例): testing和生成覆盖率报告的unit testing框架 (jUnit / phpUnit) 编码指南检查器 (checkstyle / phpCodeSniffer) PMD在代码库(pmd / phpmd)中发现潜在的问题, 更多如果适用/需要,但这三个将是我猜的基础? 赏金编辑: 虽然我得到了一个可以接受的答案,但我被要求提供更多的工具/选项/理由来使用Jenkins来完成这个项目。 在过去,我已经在这方面用商业工具做了不太理想的经验。 (什么?你想保存这些报告吗?那么你需要购买额外的10k Bucks / Year插件,可以为你生成花哨的graphics!)我可能在这里错了,所以请告诉我,如果我是。 但主要是我正在寻找与Jenkins一起使用C ++开发和QA的全套工具

你最喜欢的Delphi嘲笑库是什么?

我想开始在我的Delphi项目上使用模拟对象。 快速谷歌后,我已经find了那些: delphi模拟向导 PascalMock 所以我的问题是你最喜欢的是什么?为什么?

Xcode 4.5命令行unit testing

在通过命令行运行我的unit testing时更新到Xcode 4.5时遇到问题。 以下是当我尝试运行testing时看到的输出 Unknown Device Type. Using UIUserInterfaceIdiomPad based on screen size Terminating since there is no workspace. /Applications/Xcode.app/Contents/Developer/Tools/RunPlatformUnitTests.include:334: note: Passed tests for architecture 'i386' (GC OFF) /Applications/Xcode.app/Contents/Developer/Tools/RunPlatformUnitTests.include:345: note: Completed tests for architectures 'i386' 即使它说testing已经通过并完成了,我不认为它们已经被运行了。 我正在使用以下命令来运行testingxcodebuild -workspace MyApp.xcworkspace -scheme MyAppTests -sdk iphonesimulator -configurationdebugging干净构buildTEST_AFTER_BUILD = YES 有没有人遇到同样的问题,可以提供解决scheme?

node.js的unit testing框架,专门支持testingasynchronous代码?

在node.js模块列表中列出了30多个testing框架… 哪个框架最受欢迎? 他们有什么优点和缺点? 我正在寻找一个框架,支持有很多asynchronouscallback(可能像大多数其他节点项目)的代码的unit testing。 另外,我正在寻找一些相对简单而又复杂的东西。 到目前为止,我已经看过: Nodeunit非常简单,支持asynchronous代码,可以让你定义你想要调用的断言以及testing完成的时间。 Vowsjs看起来很有趣。 允许您很好地构造testing,并具有许多高级function。 不确定这些function是否实际上是有用的,通过,或者如果他们相当阻碍你的方式?

PHPUnit模拟对象和静态方法

我正在寻找最好的方法去testing下面的静态方法(特别是使用Doctrine模型): class Model_User extends Doctrine_Record { public static function create($userData) { $newUser = new self(); $newUser->fromArray($userData); $newUser->save(); } } 理想情况下,我会使用一个模拟对象来确保“fromArray”(使用提供的用户数据)和“save”被调用,但这是不可能的,因为方法是静态的。 有什么build议么?

有没有人在unit testingSQL存储过程中取得任何成功?

我们发现我们为C#/ C ++代码编写的unit testing已经真正的得到了回报。 但是我们在存储过程中仍然有数千行业务逻辑,只有当我们的产品推广到大量用户时才真正得到testing。 更糟的是,这些存储过程中的一些最终会很长,因为在SP之间传递临时表时性能会受到影响。 这阻止了我们重构使代码更简单。 我们在围绕一些关键存储过程(主要testing性能)build立unit testing方面做了几次尝试,但是发现为这些testing设置testing数据确实很困难。 例如,我们最终复制testing数据库。 除此之外,testing最终变得非常敏感,甚至是对存储过程的最小改变。 或表格需要对testing进行大量的更改。 因此,在由于这些数据库testing间歇性失败而导致许多构build中断之后,我们不得不将它们从构build过程中提取出来。 所以,我的问题的主要部分是:有没有人成功地为他们的存储过程写unit testing? 我的问题的第二部分是linqunit testing是否会更容易? 我在想,不必设置testing数据表,你可以简单地创build一个testing对象的集合,并在“linq to objects”的情况下testing你的linq代码? (我是一个完全陌生的linq,所以不知道这是否甚至可以工作)

使用Moq来validation呼叫是以正确的顺序进行的

我需要testing下面的方法: CreateOutput(IWriter writer) { writer.Write(type); writer.Write(id); writer.Write(sender); // many more Write()s… } 我创build了一个Moq'd IWriter ,我想确保Write()方法以正确的顺序被调用。 我有以下testing代码: var mockWriter = new Mock<IWriter>(MockBehavior.Strict); var sequence = new MockSequence(); mockWriter.InSequence(sequence).Setup(x => x.Write(expectedType)); mockWriter.InSequence(sequence).Setup(x => x.Write(expectedId)); mockWriter.InSequence(sequence).Setup(x => x.Write(expectedSender)); 但是,在CreateOutput() Write()的第二次调用(写入id值)会引发MockException ,消息“ IWriter.Write()调用失败,模拟行为Strict。模拟上的所有调用都必须具有相应的设置。 ”。 我也很难find任何确定的,最新的Moq序列的文档/例子。 我做错了什么,或者我不能使用相同的方法设置序列? 如果没有,是否有一个替代我可以使用(最好使用Moq / NUnit)?