【问题标题】:FitNesse: Enabling a FitNesse Fixture to call a method on the Server SideFitNesse:启用 FitNesse 夹具以调用服务器端的方法
【发布时间】:2015-01-30 04:06:40
【问题描述】:

我已经使用 Eclipse 实现了具有某些方法的 Web 服务。

然后我将它导出到一个 WAR 文件,该文件将与 Tomcat 一起使用。

然后我使用wsimport 为我的网络服务创建“存根”。

“存根”只是接口。

现在我想知道如何通过我将要编写的 FitNesse 装置调用网络服务。

我正在使用 JAVA 进行编码。

是否有任何方法可以让我从我的 FitNesse 夹具中调用网络服务方法,同时记住为网络服务生成的“存根”?

【问题讨论】:

  • 发布代码示例并询问具体问题会给您带来更好的结果。
  • 如果你这么快就给出答案,其他人都不会发帖。

标签: java eclipse web-services fitnesse wsimport


【解决方案1】:

有很多方法可以做你描述的事情。 例如,您可以在 Java 中创建自己的夹具(即包含测试代码的类),使用您生成的存根来调用您的服务。或者(我更喜欢)是直接使用 HTTP 帖子调用服务,在 wiki 中配置,并执行 XPath 查询,通过编写 Java 代码或在 wiki 上配置 XPath,根据您收到的响应来检查您的服务实现。

我放在 GitHub (https://github.com/fhoeben/hsac-fitnesse-fixtures) 上的固定装置支持后一种方法(并准备运行 FitNesse 安装)。有关如何调用 Web 服务的具体信息,请参阅 https://github.com/fhoeben/hsac-fitnesse-fixtures/wiki/4.-XmlHttpTest-Exampleshttps://github.com/fhoeben/hsac-fitnesse-fixtures/wiki/6.-SoapCallMapColumnFixture-Examples,具体取决于您要使用 Slim 还是 Fit。

Slim 示例:

!2 Body via scenario

Using a scenario allows us to generate multiple request, only changing certain values.

!*> Scenario definition
!define POST_BODY_2 { {{{
<s11:Envelope xmlns:s11="http://schemas.xmlsoap.org/soap/envelope/">
  <s11:Body>
    <ns1:GetCityWeatherByZIP xmlns:ns1="http://ws.cdyne.com/WeatherWS/">
      <ns1:ZIP>@{zip}</ns1:ZIP>
    </ns1:GetCityWeatherByZIP>
  </s11:Body>
 </s11:Envelope>
}}} }

 |script|xml http test|

 |table template |send request                                                            |
 |post           |${POST_BODY_2} |to                   |${URL}                            |
 |check          |response status|200                                                      |
 |show           |response                                                                 |
 |register prefix|weather        |for namespace             |http://ws.cdyne.com/WeatherWS/|
 |check          |xPath          |//weather:City/text()|@{City}                       |
*!

 |send request       |
 |zip  |City         |
 |10007|New York     |
 |94102|San Francisco|

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2013-04-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多