我有一个变量Object foo,它不是null.我想使用foo.bar,但只有当它不会用'没有这样的属性来轰炸我:bar for class:Whatever'时.
我该怎么做以下测试:
if (/*test-here*/) {
use(foo.bar)
}
Run Code Online (Sandbox Code Playgroud) 我试图更新我的测试,因为我对我的服务类进行了更改.在我添加的服务方法中("withNewSession")
Domain.withNewSession {
.. ...
domain.save()
}
Run Code Online (Sandbox Code Playgroud)
因为我正在使用"withNewSession",所以我得到方法缺少异常,因为这个域在我的测试类中被模拟.
我有一个集成测试,我有时想要模拟服务方法的返回.但是,我已经看到,一旦我模拟了该方法,调用它的后续测试也将使用模拟函数.
这是正常的吗?如果是这样,我怎样才能进行有时使用模拟函数的测试,有时候会使用真正的实现?
这是我的代码:
MyController {
def someService
def save(){
...
def val = someService.methodToMock()//sometimes want to mock other times, not
...
}
}
MyTest {
def "test 1"(){
...
//I want to mock here
myController.someService.metaClass.methodToMock = { [] }
...
myController.save()
}
def "test 2"(){
...
//I don't want to mock here, however
// it is returning the mocked results
myController.save()
}
}
Run Code Online (Sandbox Code Playgroud) 我正在做的一个家庭作业问题的一部分如下:
"构建一个正则表达式,捕获除文件之外的所有非空字母序列,用于或来自.为了符号方便,您可以假设存在一个not运算符,它将一组字母作为参数并匹配任何其他字母."
我想出的答案:
not(f[ile|or|rom])
Run Code Online (Sandbox Code Playgroud)
也许我是偏执狂,但这似乎太容易了?我很感激任何评论,我知道这不可能是正确的.
标题说的是真的。我试过将它导出到一个 Runnable Jar 文件,检查 Manifest.MF,并尝试用 Java 多次运行它,但没有成功。但是,当我使用命令提示符导航到该文件并使用 java -jar Name.jar 启动时,它确实有效。这表明它有效,但我无法通过双击启动它。
grails ×2
grails-orm ×1
groovy ×1
hibernate ×1
java ×1
javascript ×1
mocking ×1
properties ×1
regex ×1