首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >pact-jvm测试多层授权

pact-jvm测试多层授权
EN

Stack Overflow用户
提问于 2017-11-24 12:23:29
回答 1查看 403关注 0票数 0

我想通过pact-jvm测试我的授权服务。在我的请求中,我通过post发送一个html-body,包括一些元数据来验证用户--包括他的用户名,它也被发送到我使用的头中。在从配置文件中读取username+password之后,我将@TargetRequestFilter和@TargetRequestFilter一起添加到测试类中。这是因为应用程序运行在不同的层上。每个层都有另一个username+password组合。协议应该适用于每一层。另外,当用户更改时,我只想在配置文件中做一些小的更改。它保存用户名、密码、主机名、端口和协议。

问题是:我需要操纵请求的html主体,这取决于配置文件的内容,以匹配我在testclass中设置的头部,而无需每次创建新的pact文件。

因此,我的问题是:是否有一种方法可以操纵我希望(通过pact)从JUnit类中得到的html-body的选择性部分?

也许还有别的办法可以解决我的问题,我还没看到。

提前感谢!

为了清楚起见,请求的一个例子:

代码语言:javascript
复制
<body>
    <soap:envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
        <soap:body>
            <ns2:authevalrequest1
                xmlns:ns2="http://authgroup/authBRS/specification/ServiceView/AuthProvider/authBRS/">
                <inputmetadata> <version>V_1_0_0</version> <metadataentry>
                <key>US</key> <value>some_username</value> </metadataentry> <metadataentry>
                <key>MA</key> <value>some_user_id</value> </metadataentry> </inputmetadata>
                <request> <attrs> <type>String</type> <values>
                <value>some_user_id</value> </values> <xacml>urn:oasis:names:tc:xacml:1.0:subject:subject-id</xacml>
                </attrs> <attrs> <type>String</type> <values> <value>00</value>
                </values> <xacml>http://thisisaservice.com/resource/dataRES</xacml>
                </attrs> <attrs> <type>String</type> <values> <value>abc</value>
                </values> <xacml>http://thisisaservice.com/subject/authprofilename</xacml>
                </attrs> <attrs> <type>String</type> <values> <value>importData</value>
                </values> <xacml>http://thisisaservice.com/resource/CompanyfunctionRES</xacml> </attrs>
                </request>
            </ns2:authevalrequest1>
        </soap:body>
    </soap:envelope>
</body>

我不能更改提供者或使用者。我只是来做验证工作的。

编辑:也许我忘记说..。我希望有反应机构匹配(实际和预期),什么是没有问题的。但是我需要根据我的配置文件修改请求的html主体。

EN

回答 1

Stack Overflow用户

发布于 2017-11-28 03:34:34

这里的问题是,您正在尝试对XML进行验证,而且像我们使用JSON进行的所有验证一样,support目前不支持现成的XML验证。您可以做的只是使用字符串验证器或regex验证器,但是,如果字符串中有任何更改(比如空格),则测试可能无法验证。

此时,您可以自行创建将输出模板为字符串以验证交互的方法。我们已经研究过支持XML,但兴趣很小。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47473275

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档