【问题标题】:Use Protractor framework to invoke SOAP webservice and call database使用 Protractor 框架调用 SOAP webservice 和调用数据库
【发布时间】:2016-08-16 15:55:11
【问题描述】:

对于 UI 自动化测试,我需要能够使用 SOAP 接口 来从外部服务器写入和读取 - SOAP 是服务器唯一的暴露。我在互联网上搜索,到目前为止,我发现 REST 可以从 Protractor 中使用,但没有看到任何在 Protractor 中使用 SOAP 的示例(请参阅Bare HTTP Calls from Protractor Tests (对于 Bomi/Yogesh 和 Stiggler 的答案)和Direct Server Http Calls in Protractor... Protractor可以直接调用SOAP吗?

另外,对于一些其他任务,需要能够在 Oracle 服务器上运行 SQL 语句/过程。推荐使用 node-oracledb npm,但安装起来似乎很麻烦。在 Oracle / Protractor 交互方面,最好使用什么库?

【问题讨论】:

    标签: oracle soap wsdl protractor


    【解决方案1】:

    这不是你应该尝试用量角器解决的问题。 Protractor 是一种很酷的浏览器操作工具,但对于所有其他事情,最好使用专为浏览器设计的工具。

    您可以将任何 nodejs 库放入您的项目并使用它们。只需确保在测试中的正确位置执行它们即可。

    例如 - 这里是肥皂库 - https://www.npmjs.com/package/easysoap

    对于甲骨文: https://www.npmjs.com/package/oracle

    顺便说一句:在这个例子中 - http://squirrel.pl/blog/2014/01/15/direct-server-http-calls-in-protractor/ 使用了额外的节点 js 模块 - 'requests',这不是量角器功能。

    【讨论】:

    • 我让easySoap 使用了一个简单的参数案例。我将寻找如何使它适用于我更复杂的实际案例(我不知道如何在easySoap中编码下面的嵌套参数)。 <ServiceRequestInfo> <siri1:RequestTimestamp>2013-05-22T12:20:40+02:00</siri1:RequestTimestamp> <siri1:RequestorRef>SWM</siri1:RequestorRef> </ServiceRequestInfo>
    • 这是一个有效的简单案例(对缺乏正确格式表示歉意)-请在上面的评论中提供使用复杂参数案例的任何参考。 `
    • 我在互联网上搜索了很多...easysoap 只是出于某种原因无法正常工作...甚至不知道如何在此处发布我的代码...我的 WSDL 有嵌套标签和不同的命名空间不同的标签......不知道如何以easysoap想要的JSON格式构建它们......
    • 另外,我认为我确实需要某种可以在 Protractor 中使用的模块(Node 模块 easysoap 可以工作,但问题是我无法让它做我想做的事)。我希望 Protractor 有这个的原因是因为在每次测试之前我需要创建一些数据,并且在每次测试之后删除一些数据。如您所知,这是 E2E 测试中非常常见的任务……但现在可以确定为什么 Protractor/Node/Angular 没有一个记录完整且清晰的示例来展示如何使用复杂的 WSDL。我知道我可能不理解它......我真的需要帮助
    • 它并不常见,并且会因依赖项而使量角器过载。我还在通过数据库在测试中准备一些数据 - 但在每次测试之前和之后运行 3rd 方库都没有问题。请确保您正确地使用了soap请求库——它可能是任何其他的,而不是特别easySoap——只使用对你更有效的任何一个。如果您对如何使用该库发送特定请求还有其他问题,请创建单独的问题以不在 cmets 中发送垃圾邮件。谢谢!
    猜你喜欢
    • 2016-11-20
    • 1970-01-01
    • 2019-07-06
    • 2013-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-10
    相关资源
    最近更新 更多