我正在测试一个Web应用程序API,该API对具有X509证书的ADFS服务器进行身份验证。 为了使用Karate运行测试,我目前使用一个小型.NET应用程序,该应用程序使用安装的证书为SSO协商JWT。然后,我从Fiddler获得了承载令牌标题行,并将其手动放入我的空手道测试中。
有一个关于如何在表单字段here中使用oauth的示例,并且在使用证书时我正在寻找等效版本。
是否有一种聪明的方法来获取承载令牌,而无需手动嗅探并将其注入测试中?
答案 0 :(得分:1)
证书支持使其成为0.7.0,您可以在此处找到示例:https://github.com/intuit/karate/tree/master/karate-demo/src/test/java/ssl
希望能助您一臂之力,否则您可能需要深入了解Karate中SSL / Cert支持的这一长线程,并可能添加功能请求:https://github.com/intuit/karate/issues/281
一个想法是,如果您可以修改.NET程序以使其作为命令行应用程序运行并返回令牌或将其保存到文件中,则可以使用Java interop和Runtime.getRuntime().exec(command)
从Karate调用它。 -您应该可以在网上找到有关如何执行此操作的材料。