Tag: unit testing

Rails:如何testinglib /目录中的代码?

我有一个从parsing器对象获取数据的模型。 我在想,parsing器类应该活在lib /目录下(尽pipe我可以说它应该在其他地方)。 问题是:我的单元应该在哪里testingparsing器类? 我如何确保每次运行耙testing时都运行它们?

如何在.NET中使用真实文件进行集成testing?

我有一些类实现了一些与文件系统和文件有关的逻辑。 例如,我正在执行以下任务作为此逻辑的一部分: 检查某个文件夹是否具有特定的结构(例如,它包含具有特定名称的子文件夹等) 从这些文件夹加载一些文件并检查它们的结构(例如,这些是一些configuration文件,位于特定文件夹内的某个地方) 从configuration文件加载额外的文件进行testing/validation(例如,这个configuration文件包含有关其他文件在同一文件夹中的信息,应该有其他内部结构等) 现在,所有这些逻辑都有一些工作stream程,并且抛出exception(如果某些内容不正确)(例如,在特定文件夹位置找不到configuration文件)。 此外,这个逻辑中还包含了Managed Extensibility Framework(MEF) ,因为我正在检查的这些文件中有一些是我手动加载到MEF聚合等的pipe理DLL。 现在我想以某种方式testing所有这些。 我正在考虑在硬盘上创build几个物理testing文件夹,涵盖各种testing用例,然后运行我的代码。 我可以创build例如: 具有正确结构的文件夹和所有有效的文件 文件夹结构正确但configuration文件无效 正确的结构,但缺lessconfiguration文件等文件夹… 这是正确的方法吗? 我不确定在这种情况下究竟如何运行我的代码…我当然不想运行整个应用程序,并指出它检查这些模拟文件夹。 我应该使用一些unit testing框架来编写一种“unit testing”,它执行我的代码对这些文件系统对象? 一般来说,这是否是这种testing场景的正确方法? 还有其他更好的方法吗?

使用Mockito来validation方法后没有任何东西被调用

我正在使用Mockito编写一个unit testing在Java中,我想validation某个方法是最后一个对象上调用。 我正在testing的代码中做这样的事情: row.setSomething(value); row.setSomethingElse(anotherValue); row.editABunchMoreStuff(); row.saveToDatabase(); 在我的模拟中,我并不关心在行上编辑所有内容的顺序,但是保存它之后,我不试图做更多的事情。 有没有一个好的方法来做到这一点? 请注意,我不是在寻找verifyNoMoreInteractions:它不能确认saveToDatabase是最后一个叫做的事情,而且如果我调用我没有明确validation的行上的任何东西,它也会失败。 我希望能够这样说: verify(row).setSomething(value); verify(row).setSomethingElse(anotherValue); verifyTheLastThingCalledOn(row).saveToDatabase(); 如果有帮助,我从JMocktesting切换到Mockito: row.expects(once()).method("saveToDatabase").id("save"); row.expects(never()).method(ANYTHING).after("save");

什么是您使用的JavaScriptunit testing和嘲笑框架?

我的主要JavaScript框架是jQuery,所以我希望我的unit testing和嘲笑框架兼容。 我宁愿不必引入另一个JavaScript框架。 我目前正在使用QUnit进行unit testing,并且使用Jack进行模拟 ,但对于JavaScript的整个unit testing来说,我还是个新手。 其他人有更好的工具来build议吗? 什么为你工作?

如何模拟testing数据库(Java)?

我用Java编程,我的应用程序正在使用数据库。 因此,能够轻松testing我的数据库使用对我来说非常重要。 数据库testing是关于什么的? 对我而言,他们应该提供两个简单的要求: validationSQL语法。 更重要的是,根据给定的情况,检查数据是否被正确select/更新/插入。 那么,看来,我需要的只是一个数据库。 但实际上,我不喜欢,因为使用数据库进行testing几乎没有什么困难: “给自己一个testing数据库,可能有多难? – 那么,在我的工作地点,有一个个人testing数据库是不可能的。 你必须使用“公共”数据库,这是每个人都可以访问的。 “这些testing肯定不是很快……” – 数据库testing往往比平常testing慢。 有慢testing真的不是理想的。 “这个程序应该处理任何情况!” – 尝试和模拟数据库中的每个案例都变得有些恼人,甚至是不可能的。 对于每种情况,应该进行一定数量的插入/更新查询,这是烦人的,需要时间。 “等一下,你怎么知道那桌上有542排?” – testing中的主要原则之一是能够以与testing代码不同的方式testingfunction。 在使用数据库时,通常有一种方法可以做某些事情,因此testing与核心代码完全相同。 所以,当涉及到testing的时候,我可能会发现我不喜欢DB(当然,我将不得不在某些时候想到这个),但是在我的testing中,当我发现大多数的bug其余的testing方法)。 但是我在找什么? 我正在寻找一种方法来模拟数据库,模拟数据库,使用文件系统或只是虚拟内存。 我想也许有一个Java工具/包,它允许简单地构造(使用代码接口)每个testing的数据库模拟,模拟的表和行,SQLvalidation,并用一个代码接口来监视其状态(而不是使用SQL )。 你熟悉这种工具吗? 编辑:谢谢你的答案! 虽然我是在问一个工具,但是你也向我提供了一些关于这个问题的提示:)我需要一些时间来检查你的报价,所以我现在不能说你的答案是否令人满意。 无论如何,这里是我正在寻找的更好的视图 – 想象一下名为DBMonitor的类,它的一个特性就是查找表中的行数。 这里是我想用JUnittesting该function的一个想象的代码: public class TestDBMonitor extends TestCase { @Override public void setUp() throws Exception { MockConnection connection = new MockConnection(); this.tableName […]

Scrapyunit testing

我想在Scrapy中执行一些unit testing(screen scraper / web crawler)。 由于一个项目是通过“scrapy crawl”命令运行的,我可以通过像鼻子这样的东西运行它。 由于scrapy是在扭曲的基础上构build的,我可以使用它的unit testing框架Trial? 如果是这样,怎么样? 否则,我想鼻子工作。 更新: 我一直在讨论Scrapy-Users ,我想我应该“在testing代码中构build响应,然后调用带有响应的方法,并断言[我]在输出中获得预期的项目/请求。 我似乎无法得到这个工作。 我可以build立一个unit testingtesting课程,并在testing中: 创build一个响应对象 尝试用响应对象调用我的蜘蛛的parsing方法 但是它最终会产生这个回溯。 任何洞察力为什么?

PHP中的testing驱动开发

我是一个使用PHP开发的Web开发人员。 我在使用C#桌面应用程序中的testing驱动开发方面有一些有限的经验。 在这种情况下,我们使用nUnit作为unit testing框架。 我想开始在新项目中使用TDD,但是我真的不知道从哪里开始。 你对基于PHP的unit testing框架有什么build议?对于TDD概念相当陌生的人来说,有什么好的资源?

使用Go语言进行适当的软件包命名testing

我在Go中看到了几个不同的testing包命名策略,想知道每个策略的优缺点,以及我应该使用哪一个。 策略1: 文件名:github.com/user/myfunc.go package myfunc testing文件名称:github.com/user/myfunc_test.go package myfunc 参见bzip2的例子。 策略2: 文件名:github.com/user/myfunc.go package myfunc testing文件名称:github.com/user/myfunc_test.go package myfunc_test import ( "github.com/user/myfunc" ) 看到一个例子的电线 。 策略3: 文件名:github.com/user/myfunc.go package myfunc testing文件名称:github.com/user/myfunc_test.go package myfunc_test import ( . "myfunc" ) 看一个例子的string 。 Go标准库似乎使用了策略1和2的混合。我应该使用哪三个? 这是一个痛苦追加package *_test到我的testing包,因为这意味着我不能testing我的包私有方法,但也许有隐藏的优势,我不知道?

Rails:如何为ruby模块编写testing?

我想知道如何编写一个模块的unit testing,混合到几个类,但不知道如何去做: 我是否通过在其中一个包含它们的类的testing文件中编写testing来testing实例方法(看起来不正确),还是可以以某种方式将包含的方法的testing保存在特定于模块的单独文件中? 同样的问题适用于类方法。 我是否应该为模块中的每个类提供单独的testing文件,就像普通的rails模型一样,或者是否存在于通用模块testing文件中?

如何在java中testingjdbc代码?

我想为连接到数据库的一些代码编写一些unit testing,运行一个或多个查询,然后处理结果。 (没有实际使用数据库) 另一位开发人员编写了我们自己的DataSource,Connection,Statement,PreparedStatement和ResultSet实现,它们将根据xmlconfiguration文件返回相应的对象。 (我们可以使用伪造的数据源,并对它返回的结果集运行testing)。 我们在这里重新发明轮子吗? 像unit testing已经存在这样的事情吗? 还有其他更好的方法来testingjdbc代码吗?