【问题标题】:Web Service check in SOAP UI with Session带有会话的 SOAP UI 中的 Web 服务检查
【发布时间】:2012-08-25 09:08:15
【问题描述】:

我在 .Net 3.5 上有一个简单的网络服务,其中有一个 HelloWorld() 方法,如下所示

[WebMethod(EnableSession=true)]
public string HelloWorld() {
    if (Session["Count"] == null) { Session["Count"] = 1; }
    Session["Count"] = Convert.ToInt32(Session["Count"]) + 1;
    return "Hello World " + Session["Count"];
}

在 ASP.NET 网络浏览器和 IIS 中工作并返回输出 Hello World 1, 2, 3, 4 and soon.... 取决于页面打开或刷新的程度。

一段时间后,根据项目要求,我使用了 SOAPUI 工具(用于测试 Web 服务)。
我在 SOAPUI 中创建新项目并插入服务的 url,如 http://www.myservices/service.asmx?wsdl

在 SOAPUI 中有一个同名的方法,但是当我执行它时,它每次创建新会话时都会打开。意味着它一直返回我Hello World 1, 1, 1, 1,而不是维护会话。

但是我需要维护会话以测试服务。
谢谢。

【问题讨论】:

    标签: c# asp.net .net web-services soapui


    【解决方案1】:

    维护会话需要客户端的 cookie 支持。很可能您的客户端禁用了 cookie。您可以使用任何 http 调试器(如 Fiddler)轻松验证这一点,只需发布​​两个请求并查看第一个(应设置 cookie)和第二个请求(应携带 cookie)的响应。

    【讨论】:

    • 如果我没记错的话,Fiddler 仅与浏览器集成,SOAP UI 是一个独立的应用程序,运行在与服务运行相同的系统上,我认为要在 SOAP UI 中启用会话,我们需要检查下面的选项SOAP 用户界面。
    • 浏览器的情况并非如此,Fiddler 捕获了更多fiddler2.com/fiddler/help/hookup.asp
    • 对不起,我无法理解,需要更多帮助,新的提琴手。您是否曾经使用过 SOAPUI。我只是问,不要介意
    【解决方案2】:

    Wiktor Zychla,谢谢你的帮助,我终于知道我们如何在 SOAP UI 中处理会话了。

    我们需要在testCase中添加Request,添加HTTP Test Request。还要检查维护 HTTP 会话的选项。 参考:http://beforedikshaforgets.blogspot.com/2011/08/soap-ui-creating-test-case.html

    此外,据我了解,SOAPUI 4.0 中存在一个错误,因此我将服务转移到 SOAOUI 4.5 上以维护会话

    【讨论】:

    • 感谢您的支持。从他们的官方文档中很难找到。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-10
    • 2016-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多