{"id":19792067,"url":"https://github.com/xray-app/tutorial-js-webdriverio-cucumber","last_synced_at":"2026-07-18T21:11:16.896Z","repository":{"id":119027838,"uuid":"377922866","full_name":"Xray-App/tutorial-js-webdriverio-cucumber","owner":"Xray-App","description":null,"archived":false,"fork":false,"pushed_at":"2022-02-01T15:32:43.000Z","size":112,"stargazers_count":2,"open_issues_count":1,"forks_count":0,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-02-28T15:16:59.153Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Xray-App.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-06-17T18:14:44.000Z","updated_at":"2023-03-28T06:50:19.000Z","dependencies_parsed_at":null,"dependency_job_id":"bb90af1c-967b-48d7-afb8-1b82e2433a3f","html_url":"https://github.com/Xray-App/tutorial-js-webdriverio-cucumber","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Xray-App/tutorial-js-webdriverio-cucumber","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xray-App%2Ftutorial-js-webdriverio-cucumber","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xray-App%2Ftutorial-js-webdriverio-cucumber/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xray-App%2Ftutorial-js-webdriverio-cucumber/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xray-App%2Ftutorial-js-webdriverio-cucumber/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Xray-App","download_url":"https://codeload.github.com/Xray-App/tutorial-js-webdriverio-cucumber/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Xray-App%2Ftutorial-js-webdriverio-cucumber/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279001480,"owners_count":26083102,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-09T02:00:07.460Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-12T07:05:50.070Z","updated_at":"2025-10-09T13:35:45.508Z","avatar_url":"https://github.com/Xray-App.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Tutorial with Cypress tests, in JavaScript, using Cucumber, integrated with Xray\n\n[![build workflow](https://github.com/Xray-App/tutorial-js-webdriverio-cucumber/actions/workflows/main-cloud.yml/badge.svg)](https://github.com/Xray-App/tutorial-js-webdriverio-cucumber/actions/workflows/main-cloud.yml)\n[![license](https://img.shields.io/badge/License-BSD%203--Clause-green.svg)](https://opensource.org/licenses/BSD-3-Clause)\n[![Gitter chat](https://badges.gitter.im/gitterHQ/gitter.png)](https://gitter.im/Xray-App/community)\n\n## Overview\n\nCode that supports the tutorial [Testing using WebDriverIO and Cucumber in JavaScript](https://docs.getxray.app/display/XRAYCLOUD/Testing+using+WebDriverIO+and+Cucumber+in+JavaScript) showcasing the integration between [Xray Test Management](https://www.getxray.app/) on Jira and WebDriverIO.\n\nThe test automation code implements some UI tests for doing authentication, targeting a dummy website having a login page.\n\n## Prerequisites\n\nIn order to run this tutorial, you need to have Node.js.\nDependencies can be installed using:\n\n```bash\nnpm install\n```\n\n## Running\n\nThe straighforward approach to run everything in a single shot is to invoke the auxiliary script [run_all_cloud_standard_workflow.sh](run_all_cloud_standard_workflow.sh).\nYou need to update the client_id and client_secret to interact with your Xray cloud instance (obtainable from Xray API Keys section); you also need to update the issue keys of the corresponding stories in Jira, that you'll use as basis to generate the .feature file(s).\n\nRemember that to be able to run the scenarios, we need to have the corresponding .feature files. The previous script assumes you are using Xray to manage the specification of the scenarios, so you need to extract them from Jira (more on the possible workflows [here](https://docs.getxray.app/pages/viewpage.action?pageId=31622264)).\n\nWhen you have the .feature files, containing the Feature along with the Scenario properly tagged, you can finally run the tests.\n\n```bash\nnpx wdio run ./wdio.conf.js\n```\n\nor simply\n\n```bash\nnpm test\n```\n\n## Submitting results to Jira\n\nResults can be submitted to Jira so that they can be shared with the team and their impacts be easily analysed.\nThis can be achieved using [Xray Test Management](https://www.getxray.app/) as shown in further detail in this [tutorial](https://docs.getxray.app/pages/viewpage.action?pageId=76982913).\nThis repo contains an auxiliary script [import_results_cloud.sh](import_results_cloud.sh) that does that; it uses a configuration file to have Xray's client_id and client_secret.\nYou can also have a look at the [workflows implemented in this repo](.github/workflows) using GitHub Actions.\n\n\n## Auxiliary scripts\n\nThis repo also contains some auxiliary shell scripts, provided as an example; feel free to download and customize them to your needs.\nYou may find scripts for interacting both with Xray server/DC or Xray cloud, which have slightly different APIs.\n\n\n## Contact\n\nAny questions related with this code, please raise issues in this GitHub project. Feel free to contribute and submit PR's.\nFor Xray specific questions, please contact [Xray's support team](https://jira.getxray.app/servicedesk/customer/portal/2).\n\n## References\n\n- [WebDriverIO](https://webdriver.io/)\n- [WebDriverIO Documentation](https://webdriver.io/docs/what-is-webdriverio)\n- [Detailed tutorial for Xray Cloud showcasing the integration with Jira Cloud](https://docs.getxray.app/display/XRAYCLOUD/Testing+using+WebDriverIO+and+Cucumber+in+JavaScript)\n\n## LICENSE\n\n[BSD 3-Clause](LICENSE)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxray-app%2Ftutorial-js-webdriverio-cucumber","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxray-app%2Ftutorial-js-webdriverio-cucumber","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxray-app%2Ftutorial-js-webdriverio-cucumber/lists"}