Serenity BDD - HTTP kliens Builder - Proxy Issue - Hogyan állítsuk NTLM auth?

szavazat
0

Hi Im próbál futtatni API Tesztek munkahelyem segítségével Serenity BDD és biztos lehetsz benne, de a proxy, vagy valami blokkolja nekem, és ad nekem a kapcsolat időtúllépés kérdés

Serenity BDD - Restassured kód:

SerenityRest.rest().given().proxy(proxy_host, proxyPort).auth().basic(xxusernmexx, xxpassword)
        .spec(com.api.utils.ReuseableSpecifications.getGenericRequestSpec())
        .get(bin/userInfo).
        then().
        log().all();

A fenti kód működik a helyi laptop csatlakozik munkám Wifi. de nem működik a munkám VM (Citrix)

De amikor a Java egyedül az épület egy ügyfél tartalom építő és üti kérelmeket, hogy akkor működik. Java kód:

public class api{

    private HttpClient client; 
    Date expires = null ; 
    String cooki_1 = ; 
    HashMap<String, String> data_Header_1 = new  HashMap<String, String>();
    HttpCoreContext localContext ;
    BasicCookieStore cookieStore; 
    HttpClientContext httpClientContext;    
    String proxy_host = xxxxxx.xxxxx.intra; 
    int proxyPort = 8080;


    public api()
    {
        cookieStore  = new BasicCookieStore();
        localContext= new HttpCoreContext();
        httpClientContext = HttpClientContext.create();
        Registry<AuthSchemeProvider> authSchemeRegistry = RegistryBuilder.<AuthSchemeProvider>create()
                .register(AuthSchemes.NTLM,  new NTLMSchemeFactory())
                .register(AuthSchemes.BASIC, new BasicSchemeFactory())
                .register(AuthSchemes.DIGEST, new DigestSchemeFactory())
                .register(AuthSchemes.SPNEGO, new SPNegoSchemeFactory())
                .register(AuthSchemes.KERBEROS, new KerberosSchemeFactory())
                .build(); 
        httpClientContext.setCookieStore(cookieStore);


        NTCredentials credentials = new NTCredentials(xxusernamexx,xxpasswordxx,null,xxdomainxx );
        CredentialsProvider credProvider = new BasicCredentialsProvider();
        credProvider.setCredentials(new AuthScope(proxy_host, proxyPort), credentials );

        this.client = HttpClientBuilder.create().setProxy(new HttpHost(proxy_host, proxyPort)).setDefaultAuthSchemeRegistry(authSchemeRegistry)
                .setDefaultCredentialsProvider(credProvider).setProxyAuthenticationStrategy(new ProxyAuthenticationStrategy())
                .setRedirectStrategy(new LaxRedirectStrategy()).setDefaultRequestConfig(RequestConfig.custom()
            .setCookieSpec(CookieSpecs.STANDARD).build()).setDefaultCookieStore(cookieStore).build();
        //System.setProperty(java.net.useSystemProxies, true);

        }

    public RestResponse postRequest(String url)
    {
......
}

Ez működik ..in munkahelyem (Virtual Machines)

Tud valaki kérem tudassa velem, hogyan hajtsák végre a fenti java kódot derű bdd és megnyugodhat osztályok

A kérdést 24/10/2019 12:53
a forrás felhasználó
Más nyelveken...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more