當我嘗試使用下面的代碼來測試拋出的異常:錯誤測試拋出的異常測試
@TestFor(EncryptionService)
class EncryptionServiceSpec extends Specification {
def "test decryption of unecnrypted file"(){
setup:
def clearTextFile = new File("test/resources/clearText.txt")
clearTextFile.write("THIS IS CLEAR TEXT")
when:
def (privateKey,publicCert) = service.generateKeyPair("123")
service.decryptFile(new FileInputStream(clearTextFile), privateKey)
then:
clearTextFile.delete()
thrown GeneralSecurityException
}
}
我得到以下編譯例外,當我運行要麼Grails的測試應用程序 - 單元
編譯spec'com.genospace.services.EncryptionServiceSpec'期間出現意外錯誤。也許你使用了無效的Spock語法?無論如何,請在http://issues.spockframework.org提交錯誤報告。
java.lang.ClassCastException:org.codehaus.groovy.ast.expr.ArgumentListExpression不能org.codehaus.groovy.ast.expr.DeclarationExpression被轉換爲org.codehaus.groovy.ast.expr.VariableExpression 。 getVariableExpression(DeclarationExpression.java:103) 在org.spockframework.compiler.SpecRewriter.moveVariableDeclarations(SpecRewriter.java:538)
嘗試運行'grails clean'並重新運行測試 –
我試過了,但它似乎沒有幫助 – nialloc
您是否缺少任何導入? –