2016-05-19 5 views
0

Ich habe ein Problem speziell mit Jmeter und Ebay. Jmeter arbeitet mit verschiedenen APIs und Ebay Payload arbeitet mit Postman Client. Aber ich muss einige Artikel in Ebay von jmeter erstellen. Gebrauchte jmeter 2.9 und auch 2.13 gleiches Ergebnis.Call Ebay API von jmeter gibt zurück: Nicht HTTP-Antwort: Verbindung Zeitüberschreitung: Connect

Ich verwendete Probe von developer.ebay

Dieser Antrag ist durch jmeter auszusenden:

<!-- language: lang-html --> 

POST https://api.sandbox.ebay.com/ws/api.dll 

POST data: 
<?xml version="1.0" encoding="utf-8"?> 
<AddItemRequest xmlns="urn:ebay:apis:eBLBaseComponents"> 
    <RequesterCredentials> 
    <eBayAuthToken>mytoken***</eBayAuthToken> 
    </RequesterCredentials> 
    <ErrorLanguage>en_US</ErrorLanguage> 
    <WarningLevel>High</WarningLevel> 
    <Item> 
    <Title>Potters Father looks for Anakin</Title> 
    <Description> 
     This is the first book in the Harry Potter series. In excellent condition! 
    </Description> 
    <PrimaryCategory> 
     <CategoryID>377</CategoryID> 
    </PrimaryCategory> 
    <StartPrice>1.0</StartPrice> 
    <CategoryMappingAllowed>true</CategoryMappingAllowed> 
    <ConditionID>4000</ConditionID> 
    <Country>US</Country> 
    <Currency>USD</Currency> 
    <DispatchTimeMax>3</DispatchTimeMax> 
    <ListingDuration>Days_7</ListingDuration> 
    <ListingType>Chinese</ListingType> 
    <PaymentMethods>PayPal</PaymentMethods> 
    <PayPalEmailAddress>***@126.com</PayPalEmailAddress> 
    <PictureDetails> 
     <PictureURL>http://pics.ebay.com/aw/pics/dot_clear.gif</PictureURL> 
    </PictureDetails> 
    <PostalCode>95125</PostalCode> 
    <Quantity>1</Quantity> 
    <ReturnPolicy> 
     <ReturnsAcceptedOption>ReturnsAccepted</ReturnsAcceptedOption> 
     <RefundOption>MoneyBack</RefundOption> 
     <ReturnsWithinOption>Days_30</ReturnsWithinOption> 
     <Description>If you are not satisfied, return the book for refund.</Description> 
     <ShippingCostPaidByOption>Buyer</ShippingCostPaidByOption> 
    </ReturnPolicy> 
    <ShippingDetails> 
     <ShippingType>Flat</ShippingType> 
     <ShippingServiceOptions> 
     <ShippingServicePriority>1</ShippingServicePriority> 
     <ShippingService>USPSMedia</ShippingService> 
     <ShippingServiceCost>2.50</ShippingServiceCost> 
     </ShippingServiceOptions> 
    </ShippingDetails> 
    <Site>US</Site> 
    </Item> 
</AddItemRequest> 

[no cookies] 

Request Headers: 
Connection: keep-alive 
Accept: text/xml 
Content-Type: application/xml 
X-EBAY-API-COMPATIBILITY-LEVEL: 889 
X-EBAY-API-CALL-NAME: AddItem 
X-EBAY-API-SITEID: 0 
X-EBAY-API-DEV-NAME: *** 
X-EBAY-API-APP-NAME: *** 
X-EBAY-API-CERT-NAME: *** 
Content-Length: 2762 

Dies ist Java-Stack jmeter zurückgegeben:

java.net.ConnectException: Connection timed out: connect 
at java.net.DualStackPlainSocketImpl.connect0(Native Method) 
at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source) 
at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source) 
at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source) 
at java.net.AbstractPlainSocketImpl.connect(Unknown Source) 
at java.net.PlainSocketImpl.connect(Unknown Source) 
at java.net.SocksSocketImpl.connect(Unknown Source) 
at java.net.Socket.connect(Unknown Source) 
at sun.security.ssl.SSLSocketImpl.connect(Unknown Source) 
at sun.security.ssl.SSLSocketImpl.<init>(Unknown Source) 
at sun.security.ssl.SSLSocketFactoryImpl.createSocket(Unknown Source) 
at org.apache.jmeter.util.HttpSSLProtocolSocketFactory.createSocket(HttpSSLProtocolSocketFactory.java:151) 
at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:707) 
at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:387) 
at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171) 
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397) 
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:323) 
at org.apache.jmeter.protocol.http.sampler.HTTPHC3Impl.sample(HTTPHC3Impl.java:258) 
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy.sample(HTTPSamplerProxy.java:62) 
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1088) 
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1077) 
at org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:428) 
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:256) 
at java.lang.Thread.run(Unknown Source) 

Hast du jemand ähnliches Szenario getan hat? Ich weiß nicht, wo das Problem ist, beide Teile jmeter auch Beispiel AddItem Anruf arbeiten getrennt. Vielen Dank.

Antwort

0

Versuchen Sie es erneut, indem Sie unten in Ihrer Nutzlast entfernen und es erneut posten, ich hoffe, es sollte funktionieren.

<?xml version="1.0" encoding="utf-8"?>,

auch die jmeter http Sampler Screenshot anhängen bitte.

Debugging-Tipps:

  1. wenn es in POST MAN arbeitet, versuchen, den Unterschied in http roh Anfrage in beide gingen zu finden. Wenn Sie versuchen, Hinzufügen hinzufügen sie in Jmeter auch, irgendwann http Header wird vermissen.

  2. Überprüfen Sie, ob Ihre Maschine Firewall-geschützt ist?

    Ich hoffe, es wird Ihnen helfen.

+0

Vielen Dank für die Antwort. 2. war in der Nähe, es ist peinlich für mich, aber ich habe vergessen, dass ich hinter Proxy bin. Payload war wie POST MAN, mit Proxy funktionierte es. Also gehe ich vorwärts. Danke –

+0

Ich bin froh, dass es für Sie gearbeitet hat. Wenn es sich löst, machen Sie dies bitte als beantwortet –

Verwandte Themen