JUnit を使用して Java EE Web サービス エンドポイント メソッドをどのようにテストしますか?
SpringとMyBatisフレームワーク、およびEclipseの標準Mavenディレクトリ構造を使用しています。JUnit テストケースを作成することで、各メソッドを簡単にテストできることはわかっています。しかし、テストのために @WebService、@WebMethod、@WebResult タグをどのように利用できるのか疑問に思っています。
@WebService(endpointInterface = "com.ws.BrowserService", name = "BrowserService", targetNamespace = "http://abc.def.com")
public interface BrowserService {
/**
* Runs the provided SQL query and returns the result.
* @param queryText is the SQL query text.
* @return The query result is returned in the form of List<Object>.
*/
@WebMethod
@WebResult(name = "Object")
public List<Object> runQuery(
@WebParam(name = "QueryText") String queryText);
}
編集
実装
@WebService(targetNamespace = "http://abc.def.com", portName = "BrowserPort", serviceName = "BrowserService")
public class BrowserServiceImpl implements BrowserService {
@Autowired
private QueryMapper queryMapper;
public List<Object> runQuery(String queryText) {
List<Object> queryResult= new ArrayList<Object>();
queryResult = queryMapper.runQuery(queryText);
return queryResult;
}
}