Jenkins Soapui报错:No signature of method

2015-11-09  籽藤 

只有知道了书的结尾,才会明白书的开头。 ——叔本华

Soapui 有个 test case,每次在 soapui 里或者用 testrunner 命令运行都是 Passed,用 Jenkins maven 运行 soapui,就报错如下:  

No signature of method: static org.apache.commons.codec.binary.Base64.decodeBase64() is applicable for argument types: (java.lang.String) values: [c2tfdGVzdF85eWJQaVRMdXJiTDhxcmpiUEdTbXo1dTE6] Possible solutions: decodeBase64([B), encodeBase64([B), encodeBase64([B, boolean)

错误原因:test case 的 script assertion 中 引入了 Base64,即:

import org.apache.commons.codec.binary.Base64;

而 POM.xml 中没有配置 dependency。于是,参照 http://mvnrepository.com/artifact/commons-codec/commons-codec/1.9 更新了POM.xml,问题解决。

这实在是一件小事,但纠结了我一阵子,之前一直猜想的是 soapui jenkins 插件的问题,因为这个 jar 包并不是我手动导入的,而是直接 import 就搞定,忽略了它是个第三方 jar 包的“身份”。soapui 囊括的第三方 jar 包还不少,参见:

http://readyapi.smartbear.com/about/3rd/soapuios/commons_codec

431°/4311 人阅读/0 条评论 发表评论

登录 后发表评论