我正在为一个通过构造函数引用遗留类的类编写JUnit.遗产类是在第三方罐子里,所以我不能重构它以使生活更轻松....
这是正在测试的课程......
public MyClass {
public String methodToTest(String param) {
LegacyClass legacy = new LegacyClass(param);
*..... etc ........*
}
}
Run Code Online (Sandbox Code Playgroud)
这就是我想在mockito JUnit中做的事情.
public MyClassTest {
@Test
public void testMethodToTest() throws Exception {
LegacyClass legacyMock = mock(LegacyClass.class);
when(*the LegacyClass constructor with param is called*).thenReturn(legacyMock);
*.... etc.....*
}
}
Run Code Online (Sandbox Code Playgroud)
关于如何做到这一点的任何想法?????
我有一个包含xsd的静态wsdl.xsd和wsdl位于相同的XML名称空间中,因此xsd包含在内.
<wsdl:types>
<xsd:schema targetNamespace="http://www.mycompany.com/idm">
<xsd:include schemaLocation="idm-web-service.xsd"/>
</xsd:schema>
</wsdl:types>
Run Code Online (Sandbox Code Playgroud)
当我尝试创建一个消耗thsi wsdl的soapUI项目时,我得到....
Fri May 27 08:59:24 GMT+10:00 2011:ERROR:org.apache.xmlbeans.XmlException: error: Unexpected end of file after null
org.apache.xmlbeans.XmlException: error: Unexpected end of file after null
at org.apache.xmlbeans.impl.store.Locale$SaxLoader.load(Locale.java:3486)
at org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:1276)
at org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:1263)
at org.apache.xmlbeans.impl.schema.SchemaTypeLoaderBase.parse(SchemaTypeLoaderBase.java:345)
at org.apache.xmlbeans.XmlObject$Factory.parse(XmlObject.java:722)
at com.eviware.soapui.impl.wsdl.support.wsdl.WsdlLoader.loadXmlObject(WsdlLoader.java:107)
at com.eviware.soapui.impl.wsdl.support.xsd.SchemaUtils.getDefinitionParts(SchemaUtils.java:526)
at com.eviware.soapui.impl.wsdl.support.xsd.SchemaUtils.selectDefinitionParts(SchemaUtils.java:556)
at com.eviware.soapui.impl.wsdl.support.xsd.SchemaUtils.getDefinitionParts(SchemaUtils.java:538)
at com.eviware.soapui.impl.wsdl.support.xsd.SchemaUtils.getDefinitionParts(SchemaUtils.java:515)
at com.eviware.soapui.impl.support.definition.support.AbstractDefinitionCache.update(AbstractDefinitionCache.java:97)
at com.eviware.soapui.impl.support.definition.support.AbstractDefinitionContext$Loader.construct(AbstractDefinitionContext.java:221)
at com.eviware.soapui.support.swing.SwingWorkerDelegator.construct(SwingWorkerDelegator.java:46)
at com.eviware.soapui.support.swing.SwingWorker$2.run(SwingWorker.java:140)
at java.lang.Thread.run(Unknown Source)
Caused by: org.xml.sax.SAXParseException: Unexpected end of file after null
at org.apache.xmlbeans.impl.piccolo.xml.Piccolo.reportFatalError(Piccolo.java:1038)
at org.apache.xmlbeans.impl.piccolo.xml.Piccolo.parse(Piccolo.java:723)
at org.apache.xmlbeans.impl.store.Locale$SaxLoader.load(Locale.java:3454)
... 14 more …Run Code Online (Sandbox Code Playgroud) 刚开始使用JAX-WS.我在一个WAR文件中创建了2个测试Web服务,如下所示....
package com.djs;
import javax.jws.WebService;
@WebService()
public class AddTwoInts {
public int performAdd(int firstNum, int secondNum) {
return firstNum + secondNum;
}
}
Run Code Online (Sandbox Code Playgroud)
和.....
package com.djs;
import javax.jws.WebService;
@WebService()
public class SayHello {
public String sayHello(String inwards) {
return "Hello " + inwards;
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4">
<listener>
<listener-class>
com.sun.xml.ws.transport.http.servlet.WSServletContextListener
</listener-class>
</listener>
<servlet>
<servlet-name>jaxws</servlet-name>
<servlet-class>com.sun.xml.ws.transport.http.servlet.WSServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>jaxws</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>
Run Code Online (Sandbox Code Playgroud)
这是sun-jaxws.xml
<?xml version="1.0" encoding="UTF-8"?>
<endpoints xmlns='http://java.sun.com/xml/ns/jax-ws/ri/runtime' version='2.0'>
<endpoint name='performAdd' implementation='com.djs.AddTwoInts' url-pattern='/AddTwoInts' …Run Code Online (Sandbox Code Playgroud)