{"id":24221,"date":"2023-09-14T11:40:38","date_gmt":"2023-09-14T02:40:38","guid":{"rendered":"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/?page_id=24221"},"modified":"2023-09-20T18:36:07","modified_gmt":"2023-09-20T09:36:07","slug":"bitbucket","status":"publish","type":"page","link":"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/test-automation\/ci-cd-tools-integration\/bitbucket\/","title":{"rendered":"Integrating with Bitbucket"},"content":{"rendered":"<p>With<a href=\"https:\/\/bitbucket.org\/product\/features\/pipelines\" target=\"_blank\" rel=\"noopener noreferrer\"> Bitbucket Pipelines<\/a>, you can automate all the steps required to build, test and deploy your code. Typically teams use Bitbucket to store their source code. With the CI\/CD capabilities, they can also build and test their code inside Bitbucket by creating pipelines to streamline building and testing the code before being deployed.<\/p>\n<p>An everyday use case for Bitbucket Pipelines is building and testing your application whenever code changes are submitted. To take full advantage of TestRail and manage all your test cases and test results, both manual and automated, you can send your automated test results directly from Bitbucket to TestRail. This article will explore how to efficiently use Bitbucket Pipelines and the <a href=\"\/test-automation\/testrail-cli\/overview-and-installation\/\" target=\"_blank\" rel=\"noopener\">TestRail CLI<\/a> to accomplish this task.<\/p>\n<p>Please note that the TestRail CLI requires your test automation framework to generate a compatible JUnit XML report.<\/p>\n<h2 id=\"01GZKFB89SR02NZZ4P4EJ7KSY5\">Using the TestRail CLI in Bitbucket Pipelines<\/h2>\n<p>Automated processes can be configured in Bitbucket using a <strong>bitbucket-pipelines.yml<\/strong> file. These YAML files allow you to specify your build process in a structured manner. Under <strong>bitbucket-pipelines.yml<\/strong>, you can define a default build environment and the steps to execute when a pipeline is triggered.<\/p>\n<p>The easiest way to integrate TestRail with Bitbucket is by configuring your <strong>bitbucket-pipelines.yml<\/strong> to use the <a href=\"\/test-automation\/testrail-cli\/overview-and-installation\/\" target=\"_blank\" rel=\"noopener\">TestRail CLI<\/a> to send automated test results to TestRail. Below is a sample of how a workflow file using the TestRail CLI to send test results to TestRail would look like.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">image: python:3.9\npipelines:\n  default:\n    - step:\n        name: Build and run the tests\n        caches:\n          - pip\n        script:\n          - apt-get update &amp;&amp; apt install -y curl\n          - curl -fsSL https:\/\/deb.nodesource.com\/setup_20.x | bash - &amp;&amp; apt-get install -y nodejs\n          - pip install robotframework-browser\n          - rfbrowser init\n          - npx playwright install-deps                                        \n          - robot -d reports -x junit-report.xml \".\/tests\" || true\n        artifacts:\n          - reports\/junit-report.xml\n    - step:\n        name: Install TR CLI and upload the test results to TestRail\n        script:\n          - pip install trcli\n          - trcli -y\n            -h https:\/\/INSTANCE.testrail.io\/\n            --project \"PROJECT NAME\"\n            -u USER_EMAIL\n            -p PASSWORD\n            parse_junit\n            --title \"Automated Tests from Bitbucket Pipelines\"\n            --run-description $BITBUCKET_GIT_HTTP_ORIGIN\/pipelines\/results\/$BITBUCKET_BUILD_NUMBER\n            -f \"reports\/junit-report.xml\"<\/pre>\n<p>Breaking down the <strong>bitbucket-pipelines.yml<\/strong>, we notice some interesting facts.<\/p>\n<ol>\n<li style=\"list-style-type: none;\">\n<ol class=\"list-bullet\">\n<li>We have chosen the <a href=\"https:\/\/hub.docker.com\/_\/python\" target=\"_blank\" rel=\"noopener\">Python<\/a> image for running this build<\/li>\n<li>We have two steps within the job<\/li>\n<li>The first step is to install the <a href=\"https:\/\/robotframework-browser.org\/\" target=\"_blank\" rel=\"noopener\">Robot Framework Browser Library<\/a> and run the tests<\/li>\n<li>The second step is to install<a href=\"\/test-automation\/testrail-cli\/overview-and-installation\/\" target=\"_blank\" rel=\"noopener\"> TestRail CLI<\/a> and upload test results to TestRail<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p>The <strong>script<\/strong> in both steps defines the commands to execute on the Python image. As a whole, these scripts perform the following functions:<\/p>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul class=\"list-colored\">\n<li>Set up the environment<\/li>\n<li>Install <a href=\"https:\/\/robotframework-browser.org\/\" target=\"_blank\" rel=\"noopener\">Robot Framework Browser Library<\/a><\/li>\n<li>Run the tests<\/li>\n<li>Save the artifacts<\/li>\n<li>Upload the results to TestRail<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3 id=\"01GZKFB89SKQW57ZMFP5SSFZNJ\">Set up the environment<\/h3>\n<p>To run the tests with the <a href=\"https:\/\/robotframework-browser.org\/\" target=\"_blank\" rel=\"noopener\">Robot Framework Browser Library<\/a>, we need to install Node.js. Below scripts are used to install the Node.js on the Python image.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">script:\n  - apt-get update &amp;&amp; apt install -y curl\n  - curl -fsSL https:\/\/deb.nodesource.com\/setup_20.x | bash - &amp;&amp; apt-get install -y nodej<\/pre>\n<h3 id=\"01GZKFB89SSP6K7JD8NWCR839Q\">Install Robot Framework Browser Library<\/h3>\n<p>Below scripts are used to install the Robot Framework Browser Library from <a href=\"https:\/\/pypi.org\/search\/?q=robotframework-browser\" target=\"_blank\" rel=\"noopener\">PyPi<\/a> with pip, to Initialize the Browser library, and to install the system dependencies automatically. Here it&#8217;s worth noting that the <a href=\"https:\/\/robotframework-browser.org\/\" target=\"_blank\" rel=\"noopener\">Robot Framework Browser Library<\/a> is powered by <a href=\"https:\/\/playwright.dev\/\" target=\"_blank\" rel=\"noopener\">Playwright<\/a>.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"powershell\">- pip install robotframework-browser\n- rfbrowser init\n- npx playwright install-deps<\/pre>\n<h3 id=\"01GZKFB89SPNC5GWEE5C7AYSFP\">Running the tests<\/h3>\n<p>Below script is used to run the tests.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"powershell\">- pip install robotframework-browser<\/pre>\n<h3 id=\"01GZKFB89SQ7GG0HEYYHYQRXD5\">Saving the artifacts<\/h3>\n<p>After running the tests, the below script is used to save junit-report.xml as an artifact so that this <strong>XML<\/strong> file can be used in the next step to upload the test results to TestRail.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">artifacts:\n  - reports\/junit-report.xml<\/pre>\n<h3 id=\"01GZKFB89SA8WJ3JV7KMNZYF8C\">Upload the results to TestRail<\/h3>\n<p>This step will do two different actions<\/p>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul class=\"list-colored\">\n<li>Install the<a href=\"https:\/\/support.testrail.com\/hc\/en-us\/articles\/7146548750868\" target=\"_blank\" rel=\"noopener noreferrer\"> TestRail CLI<\/a><\/li>\n<li>Call the <a href=\"https:\/\/support.testrail.com\/hc\/en-us\/articles\/7146548750868\" target=\"_blank\" rel=\"noopener noreferrer\">TestRail CLI<\/a> to upload the JUnit report generated by your test automation framework and send the results to TestRail<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>The TestRail CLI is a Python package hosted on the Python Package Index (<a href=\"https:\/\/pypi.org\/\" target=\"_self\" rel=\"noopener\">PyPI<\/a>). To install it, we execute the command <code class=\"inline-code\">pip install trcli<\/code>.<\/p>\n<p>After the TestRail CLI is installed, there are a few <strong>mandatory arguments<\/strong> that we need to pass along with <code class=\"inline-code\">trcli -y<\/code>command, such as your TestRail instance address and credentials, the project you want to report to, the title for your test run, and the path to the JUnit report.<\/p>\n<p>For more information about arguments, please check the <a href=\"\/test-automation\/testrail-cli\/overview-and-installation\/\" target=\"_self\" rel=\"noopener\">TestRail CLI<\/a> documentation.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">- step:\n    name: Install TR CLI and upload the test results to TestRail\n    script:\n    - pip install trcli\n      - trcli -y\n          -h https:\/\/INSTANCE.testrail.io\/\n          --project \"PROJECT NAME\"\n          -u USER_EMAIL\n          -p PASSWORD\n          parse_junit\n          --title \"Automated Tests from Bitbucket workflow\"\n          --run-description $BITBUCKET_GIT_HTTP_ORIGIN\/pipelines\/results\/$BITBUCKET_BUILD_NUMBER\n          -f \"reports\/junit-report.xml\"<\/pre>\n<h2 id=\"01GZKFB89SFZG7FJ00KVR5P5VA\">Working example using Robot Framework Browser Library<\/h2>\n<p>Below is an example that illustrates how to run the Bitbucket pipeline with Robot Framework tests and then report the results to TestRail.<\/p>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul class=\"list-colored\">\n<li><a href=\"https:\/\/support.atlassian.com\/bitbucket-cloud\/docs\/create-a-git-repository\/\" target=\"_blank\" rel=\"noopener\">Create a new repository on Bitbucket<\/a><\/li>\n<li>Download the files from the <a href=\"https:\/\/github.com\/gurock\/automation-frameworks-integration\/tree\/main\/samples\/robotframework\/robotframework-browser\" target=\"_blank\" rel=\"noopener\">Robot Framework &#8211; Browser Library<\/a> repository<\/li>\n<li>Replace <strong>TESTRAIL_INSTANCE<\/strong>, <strong>PROJECT NAME<\/strong>,<strong> USER_EMAIL<\/strong>, and <strong>PASSWORD<\/strong> in the <strong>bitbucket-pipelines.yml<\/strong> file using your details (we recommend not replacing the password directly and using the <a href=\"https:\/\/support.atlassian.com\/bitbucket-cloud\/docs\/variables-and-secrets\/\" target=\"_blank\" rel=\"noopener\">Bitbucket environment variables<\/a> instead)<\/li>\n<li><a href=\"https:\/\/confluence.atlassian.com\/bitbucketserver\/importing-code-from-an-existing-project-776640909.html\" target=\"_blank\" rel=\"noopener\">Upload the project to your Bitbucket repository<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3 id=\"01GZKFB89S3T82W69XDF0SZDZE\">Executing the workflow<\/h3>\n<ul class=\"list-colored\">\n<li>Navigate to the <a href=\"https:\/\/bitbucket.org\/\" target=\"_blank\" rel=\"noopener\">Bitbucket website<\/a> and log in with valid credentials<\/li>\n<li>Click on the Repositories link on the Bitbucket dashboard, and here you will find all of your repositories<a href=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_01.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_01.jpg\" alt=\"\" width=\"797\" height=\"352\" class=\"aligncenter size-full wp-image-24238\" srcset=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_01.jpg 797w, https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_01-480x212.jpg 480w\" sizes=\"auto, (min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 797px, 100vw\" \/><\/a><\/li>\n<li>Click on the repository for which you want to trigger the pipeline. Once inside the repository, click on the <strong>Pipelines<\/strong> link from the left navigation panel<a href=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_02.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_02.jpg\" alt=\"\" width=\"783\" height=\"493\" class=\"aligncenter size-full wp-image-24239\" srcset=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_02.jpg 783w, https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_02-480x302.jpg 480w\" sizes=\"auto, (min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 783px, 100vw\" \/><\/a><\/li>\n<li>On the Pipelines screen, click on Run pipeline<a href=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_03.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_03.jpg\" alt=\"\" width=\"937\" height=\"310\" class=\"aligncenter size-full wp-image-24240\" srcset=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_03.jpg 937w, https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_03-480x159.jpg 480w\" sizes=\"auto, (min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 937px, 100vw\" \/><\/a><\/li>\n<li>In the Run Pipeline dialog box, select master as Branch and default as Pipeline, then click the Run button<a href=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_04.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_04.jpg\" alt=\"\" width=\"889\" height=\"431\" class=\"aligncenter size-full wp-image-24241\" srcset=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_04.jpg 889w, https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_04-480x233.jpg 480w\" sizes=\"auto, (min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 889px, 100vw\" \/><\/a><\/li>\n<li>You will see that the pipeline will start running<a href=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_05.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_05.jpg\" alt=\"\" width=\"1099\" height=\"449\" class=\"aligncenter size-full wp-image-24242\" srcset=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_05.jpg 1099w, https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_05-980x400.jpg 980w, https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_05-480x196.jpg 480w\" sizes=\"auto, (min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1099px, 100vw\" \/><\/a><\/li>\n<li>Once the pipeline is completed, it will be indicated with green, as shown in the screenshot below<a href=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_06.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_06.jpg\" alt=\"\" width=\"703\" height=\"738\" class=\"aligncenter size-full wp-image-24243\" srcset=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_06.jpg 703w, https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_06-480x504.jpg 480w\" sizes=\"auto, (min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 703px, 100vw\" \/><\/a><\/li>\n<li>In the <strong>Build log<\/strong>, you can see that the automated tests ran successfully, and the test results were uploaded to TestRail<a href=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_07.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_07.jpg\" alt=\"\" width=\"783\" height=\"551\" class=\"aligncenter size-full wp-image-24244\" srcset=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_07.jpg 783w, https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_07-480x338.jpg 480w\" sizes=\"auto, (min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 783px, 100vw\" \/><\/a><a href=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_08.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_08.jpg\" alt=\"\" width=\"785\" height=\"707\" class=\"aligncenter size-full wp-image-24245\" srcset=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_08.jpg 785w, https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_08-480x432.jpg 480w\" sizes=\"auto, (min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 785px, 100vw\" \/><\/a><a href=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_09.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_09.jpg\" alt=\"\" width=\"780\" height=\"397\" class=\"aligncenter size-full wp-image-24246\" srcset=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_09.jpg 780w, https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_09-480x244.jpg 480w\" sizes=\"auto, (min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 780px, 100vw\" \/><\/a><a href=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_10.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_10.jpg\" alt=\"\" width=\"775\" height=\"562\" class=\"aligncenter size-full wp-image-24236\" srcset=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_10.jpg 775w, https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_10-480x348.jpg 480w\" sizes=\"auto, (min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 775px, 100vw\" \/><\/a><a href=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_07.jpg\"><\/a><\/li>\n<li>Now Go to your TestRail instance and see your Test Run results<a href=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_11.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_11.jpg\" alt=\"\" width=\"1198\" height=\"571\" class=\"aligncenter size-full wp-image-24237\" srcset=\"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_11.jpg 1198w, https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_11-980x467.jpg 980w, https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-content\/uploads\/bitbucket_11-480x229.jpg 480w\" sizes=\"auto, (min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1198px, 100vw\" \/><\/a><\/li>\n<\/ul>\n<h2 id=\"01G74W5ZPGTYQ0PY1K37T54TF0\">What next?<\/h2>\n<p>Now that you have centralized your test results on TestRail, not only can you check the results of your automated test runs, along with the error messages for failed tests, but you can also aggregate both your manual and automated testing efforts on reports that show you the full test coverage surrounding your app and even track test automation progress. You can also report a bug directly from the automated test result to an issue tracker of your preference as you would do for your manual test results!<\/p>\n<p>You can look into the <a href=\"https:\/\/www.youtube.com\/watch?v=XXygDfOD2MY\" target=\"_blank\" rel=\"noopener noreferrer\"><strong>TestRail\u2019s Reports and Test Metrics video<\/strong><\/a> to learn about how you can leverage TestRail\u2019s reporting capabilities.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>With Bitbucket Pipelines, you can automate all the steps required to build, test and deploy your code. Typical [&hellip;]<\/p>\n","protected":false},"author":5,"featured_media":0,"parent":24160,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_et_pb_use_builder":"","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"class_list":["post-24221","page","type-page","status-publish","hentry"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-json\/wp\/v2\/pages\/24221","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-json\/wp\/v2\/comments?post=24221"}],"version-history":[{"count":25,"href":"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-json\/wp\/v2\/pages\/24221\/revisions"}],"predecessor-version":[{"id":25454,"href":"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-json\/wp\/v2\/pages\/24221\/revisions\/25454"}],"up":[{"embeddable":true,"href":"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-json\/wp\/v2\/pages\/24160"}],"wp:attachment":[{"href":"https:\/\/docs.testrail.techmatrix.jp\/testrail\/docs\/801\/wp-json\/wp\/v2\/media?parent=24221"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}