Locked Binary Body returned

  • giovedì 8 marzo 2012 21:17
     
     

    Hi, 

    All my web test recording shows nothing but "Binary Body" for each web request/respond. Everything, including my log-in info and session info. How should I do about it? 

    I did some searching myself, and seems the 

    Web Test Plugins for Web Service Messages

    http://teamtestplugins.codeplex.com/

    might be able to solve it. 

    However, I don't know how to install the Web Test Plugins. 

    Please help. 

    Thanks

Tutte le risposte

  • giovedì 8 marzo 2012 21:48
     
     
     "I don't know how to install the Web Test Plugins. "

    Starting to connecting the dots now...
    Will post back shortly. 
  • giovedì 8 marzo 2012 22:10
     
     

    What type of application are you testing?  Silverlight or something?

    For install instructions download the zip file from codeplex and there is a readme.txt thta should help.  If not this may help as well

    http://msdn.microsoft.com/en-us/library/ms243191(v=vs.100).aspx


    Tim

  • giovedì 8 marzo 2012 22:27
     
     

    Thanks Tim. 

    Yes, I'm testing Silverlight, using MS VS 2010, which means, 

    the zip file from codeplex that contains the readme.txt is wrong version for me. 

    Yes, we learn from our mistakes. :-)

    Will post back. . . 

  • giovedì 8 marzo 2012 22:59
     
     
    • Modificato TimJimMVP giovedì 8 marzo 2012 23:02
    •  
  • giovedì 8 marzo 2012 23:05
     
     
    Hi Tim,

    "the zip file from codeplex that contains the readme.txt is wrong version for me. "
    "this looks like the 2010 version"

    Yep, run setup for the install, and all is fine. 

  • giovedì 8 marzo 2012 23:10
     
     

    Ok, the plugin is installed, and I can view the data. 

    Now what remaining is, how to deal with it? 

    each of my web request/respond looks like this:

        <Request Method="POST" Version="1.1" Url="https://bla/bla/CoreService.svc" ThinkTime="1" Timeout="300" ParseDependentRequests="True" FollowRedirects="True" RecordResult="True" Cache="False" ResponseTimeGoal="0" Encoding="utf-8" ExpectedHttpStatusCode="0" ExpectedResponseUrl="" ReportingName="">
          <BinaryHttpBody ContentType="application/soap+msbin1">big binary string=</BinaryHttpBody>
        </Request>

    Once the BinaryHttpBody has been decoded, there is another layer of payload that needs further decoding. 

    Has anyone been dealing with such situation before? 

    How did you handle it? 

    Thanks


    • Modificato smetah giovedì 8 marzo 2012 23:13
    •  
  • giovedì 8 marzo 2012 23:58
     
     

    Is there any way for me to config my IE to reject the binary data and accept only text? (Similar to rejecting gzipped content and accept text only). 

    Thanks

  • venerdì 9 marzo 2012 16:14
     
     

    Have you read this post: http://blogs.msdn.com/b/mahipalkante/archive/2010/04/07/web-test-plugins-for-web-service-messages.aspx  and the bottom of this one?

    http://blogs.msdn.com/b/edglas/archive/2010/03/24/web-test-authoring-and-debugging-techniques-for-visual-studio-2010.aspx#PostBodyEditor

    You cannot configure your way around this issue in internet explorer, MSBIN1 is the format your Silverlight app is using to communicate with WCF. 

    What is the goal of your test ?  Are you trying to load test WCF services?  If so I would suggest using unit tests in your load test is the better approach.  Please see this thread for an explanation: http://social.msdn.microsoft.com/Forums/en-US/vstswebtest/thread/f3308603-a1df-4680-bb26-e723300a3c16

    If you are trying to "test the UI" then have a look at coded UI tests.

    If you are trying to validate WCF responses to a request, then a web test or unit test is a good choice though I still prefer using unit tests for that though that does require programming skills.


    Tim

  • lunedì 12 marzo 2012 01:53
     
     

    Sorry for responding late Tim,

    In the first round that I read all the urls that you listed, I got lost totally because I didn't find any solution (in my view all of them are relevant to my problem but not solutions). Having read them again, plus the urls from with those url that you listed, I still don't know which solution were you suggesting. Reading them are very helpful, very good background materials, just I can't figure out solution myself from them. So I'll focus on you reply instead.


    Have you read this post:. . .   and the bottom of this one?


    You meat the codeplex.com\teamtestplugins, correct?

    I've already installed it, and have also posted a question above, on "Thursday, March 08, 2012 11:13 PM".


    What is the goal of your test ?  Are you trying to load test WCF services?  If so I would suggest using unit tests in your load test is the better approach.

    Yes, I need to do is to load test the WCF services. However the unit tests are not enough for me because my load test is more an integration test that needs to test different components, which are able to communicate successfully with each other so as to finish the whole complex process. So unit tests is out for me.

    Thanks all the same anyway.

  • lunedì 12 marzo 2012 01:56
     
     
    plus the urls from *within* those url that you listed
  • lunedì 12 marzo 2012 20:25
     
     

    Hi Smeta, I hoped going through all that info would give you a nudge in the right direction especially Mahipals blog.  Many people don't understand that viewing web test results for a Silverlight recording is going to look different than that of an html site because the browser preview pane does not load the Silverlight plugin.  In any case when you look at the web service response treeview what are you seeing that is different than the screen shot here?

    http://blogs.msdn.com/b/mahipalkante/archive/2010/04/07/web-test-plugins-for-web-service-messages.aspx

    Are you able to add the extraction and validation rules?  Are you trying to do something more than that?


    Tim

  • lunedì 12 marzo 2012 20:40
     
     

    "To test these applications under various scenarios we really need to edit, parameterize, extract values from responses and data drive these messages rather than simply playing back the same messages that are captured by Web Test recorder."

    This is all that I need to do at the moment. Ie, parameterize, extract values from responses. However, the plugin will only show the additional tab "Web Service" in Web Test results, not in  .webtest file -- I haven't find a way to view the binary data in my .webtest file yet. Thus, I can't extract/parameterize my web test, which make the web test a very short-lived one.

    Thanks

  • lunedì 12 marzo 2012 21:10
     
     Con risposta

     I see but I am not sure how you are going to get a better workflow.  The web test is just a series of requests.  You have the ability to sprinkle in some extraction rules so you can forward some information from one request to the next but the test has no notion of what a response will look like.  It will only applysome logic - regex or string type search - to whatever the response is and store the extracted value in some context parameter.   I guess the best I can suggest is to run the web test, add the extraction rule(s) from the test result, go to the web test and examine the extraction rule, then hopefully it will be intuitive enough to be able to add some simple extractions to the webtest without going through the results view to create those rules.

    Hope that helps


    Tim

    • Contrassegnato come risposta smetah lunedì 12 marzo 2012 21:12
    •  
  • lunedì 12 marzo 2012 21:12
     
     
    Thanks Tim for your persistent. 
  • lunedì 12 marzo 2012 21:20
     
     
    no problem and good luck.

    Tim