var odoo = { csrf_" /> var odoo = { csrf_" /> var odoo = { csrf_"/>

How to retrieve session information and pass single digit value in JMeter

78 Views Asked by At

I have the below response on JMeter 5.2.1.

<!DOCTYPE html>
        <html>
            <head>

                <script id="web.layout.odooscript" type="text/javascript">
                    var odoo = {
                        csrf_token: "123123..",
                        debug: "",
                    };
                </script>
                <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no"/>
                <meta name="theme-color" content="#875A7B"/>
                <script type="text/javascript">
                    xx.__session_info__ = {**"uid": 2,** "is_system": true, "is_admin": true, "user_context": {"lang": "en_US", "uid": 2}, "db": "test", "server_version_info": [1, 0, 0, "final", 0, "e"], "support_url": "https://www.test.com", "name": "admin", **"username": "admin"**, "partner_id": 1 };
                </script>                
                <script type="text/javascript" ...></script>
                <script type="text/javascript" ...></script>
            </head>
            <body class="o_web_client">
            </body>
        </html>

I want to retrieve the "uid" and "username" values and pass them to the next request as a variable dynamically(uid value is 2 and username is admin)

Kindly suggest how to retrieve these values.

In addition, the uid value is very small and it's too complicated to find and replace so kindly suggest how to replace the existing id with the newly found id.

1

There are 1 best solutions below

0
Dmitri T On BEST ANSWER

I would suggest doing it in 2 steps:

  1. Use Boundary Extractor to get the value of xx.__session_info__. Example configuration:

    enter image description here

  2. Use JSON Extractor to extract uid and name from the JMeter Variable generated by the Boundary Extractor:

    enter image description here

End to end demo:

enter image description here