我真的有一个非常不愉快的时间测试使用Grails。我会描述我的经历,我想知道是否有更好的方法。
这很麻烦,因为被测试的东西可能很好.真正的风险和痛苦是测试本身的设置代码。
因此,我已经尝试养成使用.save(failOnError: true)来避免这个问题的习惯,但是这并不是每个从事该项目的人都能轻松执行的。而且有点臃肿。对于作为单元测试一部分运行的代码,最好打开它。
然后,一旦您获得html文件并单击失败的测试,它将告诉您一个行号。由于这些报告不在IDE中,所以您不能只单击堆栈跟踪就可以转到代码行.你得回去自己找。阿格!@!
也许人们能忍受,但我拒绝。测试不应该如此痛苦。它应该是快速和无痛的,否则人们不会这样做。
请帮帮忙。解决办法是什么?Rails而不是Grails?完全不同的东西?我喜欢Grails框架,但它们从来没有演示过测试的原因。他们有一个时髦的框架,但测试是痛苦的。
在过去的1.5个月中使用了Scala,并且完全被ScalaTest所宠坏。我不能再这样下去了。
发布于 2010-05-20 15:20:21
可以在配置文件中设置此属性:
grails.gorm.failOnError=true这将使其成为保存的系统范围默认设置(如果需要,可以使用.save(failOnError: false)覆盖)。
如果只想在测试中使用这种行为,可以将其放在Config.groovy中特定于环境的节中。实际上,我喜欢这是一个项目范围的行为。
我确信有一种方法可以在定义的范围内打开/关闭failOnError,但我还没有研究如何做到这一点(可能是一篇很好的博客文章,如果我写了一篇文章,我会更新的)。
我不知道您的想法中有什么错误配置,但是当我的测试失败时,它显示了一个红色的栏,我可以点击堆栈跟踪中的行,然后直接处理这些问题。intellij的最新版本甚至会崩溃掉大多数试图修复问题时不感兴趣的元类漫游。
如果您还没有这样做以生成您的项目,我将尝试删除现有的..ipr/..iml/..iws/..idea文件,并运行此命令让grails重新生成您的配置:
grails integrate-with --intellij然后运行生成的.ipr文件。
https://stackoverflow.com/questions/2872590
复制相似问题