使用空手道框架执行 API 测试时观察到 DNS 错误 [重复]

DNS error observed while performing API testing using karate framework [duplicate]

提问人:user3498245 提问时间:2/4/2019 更新时间:11/21/2022 访问量:730

问:

在通过 karat 对 api 执行 get 调用时,当 im 使用的代理被注释时观察到 DNS 错误,但如果我使用代理,它会返回 401 错误。

下面是以下代码:

功能文件代码 :

    Background:
    *url baseUrl
    *def someData = { user:'"myemailid"','ContentType':'application/json',"Accept": "*/*"} 
    *headers someData

    Scenario: SomeScenario
    Given path '/clients'
    When method GET
    Then status 200

Karate Config :

    function()
    {
    karate.configure('proxy','ip address')
    var config = {
    baseUrl:'some url' 
    }
    return config;
    }

请求发送到服务器: DEBUG com.intuit.karate - 请求:

1 > GET url
1 > Accept: */*
1 > Accept-Encoding: gzip,deflate
1 > Content-Type: application/json
1 > Host: scrbmapdk007182:8080
1 > Proxy-Connection: Keep-Alive
1 > User-Agent: Apache-HttpClient/4.5.5 (Java/1.8.0_141)
1 > user: "myemail"

响应是 502 以及 DNS 错误

不知道我哪里出了问题,因为它正在通过邮递员工作。请求发送与 postman 中的相同

空手道

评论


答:

1赞 Peter Thomas 2/4/2019 #1

阅读文档:https://github.com/intuit/karate#configure

必须采用 URI 格式,包括端口号(如果适用):http:https:

karate.configure('proxy','http://myhost:80');

编辑:对于其他登陆这里的人,除了图片中可能存在HTTP代理这一事实之外 - Karate行为与Postman略有不同的另一个地方是,Karate默认情况下不会自动发送Accept标头

评论

1赞 user3498245 2/5/2019
谢谢彼得。会检查一下
0赞 user3498245 2/12/2019
嗨,彼得, 尝试在本地测试 api 时观察到以下情况 调试 com.intuit.karate - 1 < 301 1 < 连接:关闭 1 < 位置: 10.91.28.206 1 <服务器:BlueCoat-Security-Appliance
0赞 Peter Thomas 2/12/2019
@user3498245,如果不能够复制,就无法诊断: github.com/intuit/karate/wiki/How-to-Submit-an-Issue - 我建议在了解 Java 和调试的人的帮助下,如果需要的话,可以对空手道代码进行调试和修复 - 祝一切顺利!
0赞 user3498245 2/12/2019
谢谢彼得。会试着弄清楚