我是Spock框架的新手,在使用抽象java测试类时遇到了问题。
我想要的是一个groovy测试类,它用一些常用的方法扩展一些其他java抽象类,这些方法反过来扩展规范类。
class GroovyTest extends AbstractTest {
def "my test"() {
....
}
}
public abstract class AbstractTest extends Specification {
...
some common methods
...
}
当我运行GroovyTest类时,我得到以下错误:
Org.SpockFramework.Runtime.InvalidSpecException:规范“org.my.package.AbstractTest”未正确编译(Spock AST转换未运行);尝试进行干净的构建
当我使用groovy抽象类时,它可以正常工作,不会出错。
那么我的问题是不是有一种方法可以将Java类与Spock框架一起使用呢?
Spock是一种基于DSL Groovy的测试语言。它在测试执行之前执行到规范Groovy代码的转换(AST)。在您的例子中,您尝试编写基于Java的Spock测试。Spock无法从规范的Java代码执行AST转换,并抛出IValidSpecException。
更新 根据新的构建系统,层次结构应该如下所示: 我还尝试扩展AndroidTestCase,并在两个父类中都收到了这个错误: 我尝试用这个解决方案解决这个错误,但是项目结构模块依赖项部分没有Android 1.6平台。所以,基本上,我不知道如何在类路径中将junit依赖项移到Android依赖项之上。
问题内容: 我一直在努力使getResource在整个上午正常工作,但是到目前为止,我必须使其正常工作的唯一方法是将res文件夹移到bin文件夹,然后像这样使用getResource 但是我有没有办法使res不在bin文件夹中? 问题答案: 没关系,我真不敢相信那是多么愚蠢的修复。 我将res文件夹添加到主项目文件夹而不是bin中,然后进入eclipse 运行>运行配置>类路径>选择用户条目>高级
问题内容: 我有一堂课,负责将合同从CSV导入数据库。 该类本身只有一个开始导入的公共方法,而其他方法都是私有的(因为只有该类本身将使用,并且它们保留逻辑)。 我开始使用Spock对该类进行测试,并且有许多私有方法,该如何测试? 我应该将它们公开进行测试吗?测试仅主要方法,公开一种? 什么是最好的? 问题答案: 从理论上讲,您的私有方法最终会被一种公共方法所使用,否则根本就不会使用它们。因此,通常
我目前使用的是Android Studio版本1.0.2。我已经创建了几个类,并让Android Studio为我生成了一些JUnit4测试框架。当我生成这些测试时,它通知我在模块中找不到JUnit4库。有一个按钮说“修复”,所以我点击了它,它允许我创建一个新的测试。我也检查了git,它似乎没有改变任何其他文件。 在尝试运行这些测试时,我似乎遇到了一个错误。 下面是我的测试结果 错误:任务“:ap
我正在为我的项目创建junit测试用例。我有下面的代码,我想在其中创建一个模拟, 我正在使用jUnit和mockito核心jar。我尝试了下面的代码, 使用上述代码,它在模拟loadProperties方法时抛出错误。如何模拟Spring静态类并返回我的模拟属性对象? 任何帮助都将不胜感激。
基于此链接中的答案,创建了一个包含测试类的测试套件 返回错误 但是每个添加的测试类都有测试方法,并且单独运行