---
description: Git Hub is a Collaboration platform. It is built on top of git. It allows you to keep both local and remote copies of your project. A project which you can publish it among your team members as they c
title: Github Integration with Selenium: Complete Tutorial
image: https://www.guru99.com/images/github-integration-with-selenium.png
---

 

[Skip to content](#main) 

**⚡ Smart Summary**

GitHub integration with Selenium places the automation project in one shared remote repository, so every team member pulls the same code and Jenkins builds each change directly from that repository without any manual copying.

* 🔘 **Prerequisites:** Jenkins, Maven and Tomcat must be installed before the Git and GitHub setup begins.
* ☑️ **Git Binaries:** The Windows installer sets the PATH, SSH client and line-ending rule.
* ✅ **Jenkins plugin:** Install the GitHub plugin from the plugin manager, then restart before it appears.
* 🧪 **Eclipse EGit:** Share Project creates the local repository; Commit and Push send code to GitHub.
* 🛠️ **Jenkins job:** A Maven job points at the repository URI and the pom.xml path.
* ⚠️ **Authentication:** GitHub no longer accepts passwords for pushes, so use a token or SSH key.

[ Read More ](javascript:void%280%29;) 

![GitHub integration with Selenium](https://www.guru99.com/images/github-integration-with-selenium.png) 

## What is GitHub?

GitHub is a collaboration platform built on top of Git. It allows you to keep both a local and a remote copy of your project, so a project can be published among team members who use and update it from there.

**Advantages of using GitHub for Selenium:**

* When multiple people work on the same project they can update project details and inform other team members simultaneously.
* [Jenkins](https://www.guru99.com/jenkins-tutorial.html) can regularly build the project from the remote repository, which helps us keep track of failed builds.

## Prerequisite for Selenium and GitHub Integration

Before we start Selenium and GitHub integration, we need to install the following components.

1. Jenkins installation
2. Maven installation
3. Tomcat installation

You can find the installation steps in the following guides:

1. [Maven and Jenkins installation guide](https://www.guru99.com/maven-jenkins-with-selenium-complete-tutorial.html)
2. [Tomcat installation guide](https://www.guru99.com/apache.html)

The screenshot below shows the Selenium Maven project we will share to GitHub.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit1.1.png)

## Git Binaries Installation

Now let us start by installing the Git Binaries.

**Step 1)** Launch the browser and navigate to <https://git-scm.com/>

**Step 2)** Download the latest stable release.

**Step 3)** Click on the download for Windows, then begin the installation.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit1.png)

**Step 4)** Go to the download location or icon and run the installer.

**Step 5)** Click through the welcome screen and the General Public License.

**Step 6)** Click on the next button in the Git setup wizard.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit2.png)

**Step 7)** Read the GNU General Public License and click on next.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit3.png)

**Step 8)** In the next window,

1. Select the directory where you want to install the Git Binaries, and
2. Click on the next button

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit4.png)

**Step 9)** Select the components you want to install and click on next.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit5.png)

**Step 10)** If you want to create a start menu folder for Git, leave the setting default and click on next.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit6.png)

**Step 11)** In this step,

1. Select Use Git from the Windows Command Prompt so Git runs from the command line, and
2. Click on next, leave the default setting and click next again.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit7.png)

**Step 12)** In this step,

1. Select Use OpenSSH. It lets us run the command from the command line and sets the environment path.
2. Click on the next button.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit8.png)

**Step 13)** In this step,

1. Select “Checkout Windows-style, commit Unix-style line endings” (this controls how Git should treat line endings in text files).
2. Click on the next button.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit9.png)

**Step 14)** In this step,

1. Select Use MinTTY, the default terminal of MSys2, for Git Bash
2. Click on the next button

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit10.png)

The installer then copies the files across.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit11.png)

Open the command prompt, type “git” and hit Enter. The screen below confirms a successful installation.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit12.png)

### RELATED ARTICLES

* [CSS Selector in Selenium ](https://www.guru99.com/locators-in-selenium-ide.html "CSS Selector in Selenium")
* [Store Variables, Echo, Alert, PopUp handling in Selenium IDE ](https://www.guru99.com/store-variables-handling-selenium-ide.html "Store Variables, Echo, Alert, PopUp handling in Selenium IDE")
* [Selenium C# Tutorial: NUnit Framework with Example ](https://www.guru99.com/selenium-csharp-tutorial.html "Selenium C# Tutorial: NUnit Framework with Example")
* [How to Handle Proxy Authentication in Selenium Webdriver ](https://www.guru99.com/selenium-proxy-authentication.html "How to Handle Proxy Authentication in Selenium Webdriver")

## Jenkins Git Plugin Install

With Git installed, Jenkins needs its own plugin to read a GitHub repository.

**Step 1)** Launch the browser and navigate to your Jenkins.

**Step 2)** Click on Manage Jenkins.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit13.png)

**Step 3)** Click on Manage Plugins. It will open another window.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit14.png)

**Step 4)** Click on the Available tab.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit15.png)

**Step 5)** In this step,

1. Select the GitHub plugin, then
2. Click on the Download now and install after restart button.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit16.png)

**⚠️ Current Jenkins UI:** the entry is now _Manage Jenkins > Plugins_ and the tab is _Available plugins_. The screens keep the older labels; the actions are unchanged.

Jenkins now installs the GitHub plugin and its dependencies. Once finished, restart your Tomcat server by calling the shutdown.bat file.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit17.png)

After restarting Tomcat and Jenkins we can see the plugins listed in the Installed tab.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit18.png)

## Setting Up our Eclipse with GitHub Plugin

The update site for the EGit plugin is <https://download.eclipse.org/egit/updates/>

**⚠️ Version note:** Eclipse IDE for Java Developers now bundles EGit. Check _Window > Show View > Git_ first and skip this section if the view already exists.

**Step 1)** Launch Eclipse and then

1. Click on the Help menu, then
2. Click on Install New Software

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit19.png)

**Step 2)** The screen below opens once we click on Install New Software. Now click on Add.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit20.png)

**Step 3)** In this step,

1. Type the name “EGIT” and
2. Enter the location <https://download.eclipse.org/egit/updates/>, then
3. Click on OK.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit21.png)

**Step 4)** Then click on Select All and next.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit22.png)

**Step 5)** Click on next, accept the license agreement, then finish the installation and restart Eclipse.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit23.png)

## Building a repository on Git

**Step 1)** Navigate to <https://github.com/> and sign up for GitHub.

**Step 2)** Once you have successfully signed up, click on create new repository.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit24.png)

**Step 3)** In this step,

1. Enter the name of the repository, and
2. Click on Create repository

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit25.png)

## Testing Example Of Using Selenium with GitHub

**Step 1)** Once we are done with the new repository, launch Eclipse.

1. Click on File
2. Then click on New, and then
3. Click on Other

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit26.png)

**Step 2)** In this step,

1. Select Maven Project and browse the location.
2. Click on next

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit27.png)

**Step 3)** In this step,

1. Select the project name and location, then
2. Click on next

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit28.png)

**Step 4)** Click on next.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit29.png)

**Step 5)** In this step,

1. Enter Group Id and
2. Artifact Id, and
3. Click on the Finish button.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit30.png)

As soon as you click on the Finish button, a project will be created.

**Step 6)** Now let us create a sample script.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit31.png)

**Step 7)** Now push the local repository to GitHub.

1. Open Eclipse and then navigate to the project
2. Right-click on the project and select Team, then
3. Select Share Project

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit32.png)

**Step 8)** Clicking Share Project opens another window. In this step,

1. Select the local repository, and
2. Click on Finish.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit33.png)

Once we click on Finish, the project structure changes to show that a local repository was created.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit34.png)

**Step 9)** In this step,

1. Right-click on the project and Team, then
2. Click on Commit

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit35.png)

**Step 10)** In this step,

1. Enter a commit message and
2. Select the files we want to send to the GitHub repository
3. Click on Commit and Push

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit36.png)

**⚠️ Authentication note:** GitHub stopped accepting account passwords for Git operations in August 2021\. Supply a personal access token with the repo scope instead, or configure an SSH key.

The project icons then change, showing that the code was committed and pushed to GitHub.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit37.png)

The GitHub repository confirms the project was pushed.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit38.png)

Now we execute the project from GitHub in Jenkins.

**Step 11)** Launch the browser and open your Jenkins.

**Step 12)** Click on New Item.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit39.png)

**Step 13)** In this step,

1. Enter the item name
2. Select Maven Project
3. Click on the OK button

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit40.png)

**Step 14)** In this step, we will configure GitHub in Jenkins.

1. Click on Git, and
2. Enter the repository URI
3. Click on Add Repository

With multiple repositories in GitHub, add the name in the Refspec field.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit41.png)

We can get the URI from the GitHub repository page.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit42.png)

**Step 15)** In this step,

1. Add the pom.xml file location in the textbox and
2. Specify the goals and options for Maven, then
3. Select the option for how to run the test
4. Click on the Save button.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit43.png)

**Step 16)** The screen below appears. Build the project by clicking on Build.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit44.png)

**Step 17)** It will show the build. Click on the build number or the build date.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit45.png)

**Step 18)** The screen below appears. Click on Console Output.

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit46.png)

Finally, we can verify that our build completed successfully. The same job can then feed a [CI/CD pipeline](https://www.guru99.com/ci-cd-pipeline.html) or a [freestyle project](https://www.guru99.com/create-builds-jenkins-freestyle-project.html).

[](https://www.guru99.com/images/cassandra/021216%5F0757%5FSeleniumwit47.png)

## FAQs

🔑 Why does GitHub reject my Eclipse password when pushing?

GitHub removed password authentication for Git operations in August 2021\. Create a personal access token with the repo scope and use it instead of the password, or switch the remote to SSH.

🌿 Is the default GitHub branch still called master?

No. New repositories default to **main**. If Jenkins reports that the branch does not exist, change the Branch Specifier in the job from \*/master to \*/main.

🔁 How do you make Jenkins build automatically on every push?

Poll SCM checks the repository on a cron schedule. A GitHub webhook pointing at your Jenkins URL triggers a build the moment a push lands, which is faster and cheaper.

🤖 How does AI help triage a failed Selenium build?

AI-assisted analysis reads the console output, clusters failures by shared stack traces and separates real regressions from environment noise. Some plugins also predict which commit broke the build.

💻 Can GitHub Copilot help write a Jenkinsfile for a Selenium job?

[GitHub Copilot](https://github.com/features/copilot) drafts declarative stages quickly, but check them against your own [Jenkins pipeline](https://www.guru99.com/jenkins-pipeline-tutorial.html) setup, because suggested plugin names are often outdated.

🧰 Do you still need to install EGit separately in Eclipse?

Usually not. Eclipse IDE for Java Developers has shipped with EGit for years. Check Window then Show View then Git first; the manual install matters only for a minimal Eclipse package.

🐙 What is the difference between Git and GitHub?

Git is the version control tool on your machine that records commits. GitHub is a hosting platform built on Git, adding remote repositories, pull requests, issues and team access control.

📦 Which files should stay out of the repository?

Add a .gitignore covering target, .settings, .project, .classpath and any credentials file. Committing build output and IDE metadata causes merge conflicts and enlarges the Jenkins checkout.

#### Summarize this post with:

ChatGPT Perplexity Grok Google AI 

**Stay Updated on AI** **Get Weekly AI Skills, Trends, Actionable Advice.** 

##### Sign up for the newsletter

Subscribe for Free 

You have successfully subscribed.  
Please check your inbox. 

![AI-Newsletter]() Chosen by over **350,000+** professionals 

[Scroll to top ](#wrapper)Scroll to top 

× 

Toggle Menu Close 

Search for: 

Search

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://www.guru99.com/#organization","name":"Guru99","sameAs":["https://www.facebook.com/Guru99Official","https://twitter.com/guru99com"],"logo":{"@type":"ImageObject","@id":"https://www.guru99.com/#logo","url":"https://www.guru99.com/images/guru99-logo-v1-150x59.png","contentUrl":"https://www.guru99.com/images/guru99-logo-v1-150x59.png","caption":"Guru99","inLanguage":"en-US"}},{"@type":"WebSite","@id":"https://www.guru99.com/#website","url":"https://www.guru99.com","name":"Guru99","publisher":{"@id":"https://www.guru99.com/#organization"},"inLanguage":"en-US"},{"@type":"ImageObject","@id":"https://www.guru99.com/images/github-integration-with-selenium.png","url":"https://www.guru99.com/images/github-integration-with-selenium.png","width":"700","height":"250","caption":"Github Integration with Selenium","inLanguage":"en-US"},{"@type":"BreadcrumbList","@id":"https://www.guru99.com/selenium-github.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":"1","item":{"@id":"https://www.guru99.com","name":"Home"}},{"@type":"ListItem","position":"2","item":{"@id":"https://www.guru99.com/selenium","name":"Selenium"}},{"@type":"ListItem","position":"3","item":{"@id":"https://www.guru99.com/selenium-github.html","name":"Github Integration with Selenium: Complete Tutorial"}}]},{"@type":"WebPage","@id":"https://www.guru99.com/selenium-github.html#webpage","url":"https://www.guru99.com/selenium-github.html","name":"Github Integration with Selenium: Complete Tutorial","dateModified":"2026-07-30T12:01:11+05:30","isPartOf":{"@id":"https://www.guru99.com/#website"},"primaryImageOfPage":{"@id":"https://www.guru99.com/images/github-integration-with-selenium.png"},"inLanguage":"en-US","breadcrumb":{"@id":"https://www.guru99.com/selenium-github.html#breadcrumb"}},{"@type":"Person","@id":"https://www.guru99.com/author/admin","name":"Krishna Rungta","url":"https://www.guru99.com/author/admin","image":{"@type":"ImageObject","@id":"https://www.guru99.com/images/krishna-rungta-v2-120x120.png","url":"https://www.guru99.com/images/krishna-rungta-v2-120x120.png","caption":"Krishna Rungta","inLanguage":"en-US"},"worksFor":{"@id":"https://www.guru99.com/#organization"}},{"articleSection":"Selenium","headline":"Github Integration with Selenium: Complete Tutorial","description":"Git Hub is a Collaboration platform. It is built on top of git. It allows you to keep both local and remote copies of your project. A project which you can publish it among your team members as they c","keywords":"selenium","speakable":{"@type":"SpeakableSpecification","cssSelector":[".entry-title",".summary"]},"@type":"Article","author":{"@id":"https://www.guru99.com/author/admin","name":"Krishna Rungta"},"dateModified":"2026-07-30T12:01:11+05:30","image":{"@id":"https://www.guru99.com/images/github-integration-with-selenium.png"},"copyrightYear":"2026","name":"Github Integration with Selenium: Complete Tutorial","subjectOf":[{"@type":"FAQPage","mainEntity":[{"@type":"Question","name":"Why does GitHub reject my Eclipse password when pushing?","acceptedAnswer":{"@type":"Answer","text":"GitHub removed password authentication for Git operations in August 2021. Create a personal access token with the repo scope and use it instead of the password, or switch the remote to SSH."}},{"@type":"Question","name":"Is the default GitHub branch still called master?","acceptedAnswer":{"@type":"Answer","text":"No. New repositories default to main. If Jenkins reports that the branch does not exist, change the Branch Specifier in the job from */master to */main."}},{"@type":"Question","name":"How do you make Jenkins build automatically on every push?","acceptedAnswer":{"@type":"Answer","text":"Poll SCM checks the repository on a cron schedule. A GitHub webhook pointing at your Jenkins URL triggers a build the moment a push lands, which is faster and cheaper."}},{"@type":"Question","name":"How does AI help triage a failed Selenium build?","acceptedAnswer":{"@type":"Answer","text":"AI-assisted analysis reads the console output, clusters failures by shared stack traces and separates real regressions from environment noise. Some plugins also predict which commit broke the build."}},{"@type":"Question","name":"Can GitHub Copilot help write a Jenkinsfile for a Selenium job?","acceptedAnswer":{"@type":"Answer","text":"GitHub Copilot drafts declarative stages quickly, but check them against your own Jenkins pipeline setup, because suggested plugin names are often outdated."}},{"@type":"Question","name":"Do you still need to install EGit separately in Eclipse?","acceptedAnswer":{"@type":"Answer","text":"Usually not. Eclipse IDE for Java Developers has shipped with EGit for years. Check Window then Show View then Git first; the manual install matters only for a minimal Eclipse package."}},{"@type":"Question","name":"What is the difference between Git and GitHub?","acceptedAnswer":{"@type":"Answer","text":"Git is the version control tool on your machine that records commits. GitHub is a hosting platform built on Git, adding remote repositories, pull requests, issues and team access control."}},{"@type":"Question","name":"Which files should stay out of the repository?","acceptedAnswer":{"@type":"Answer","text":"Add a .gitignore covering target, .settings, .project, .classpath and any credentials file. Committing build output and IDE metadata causes merge conflicts and enlarges the Jenkins checkout."}}]}],"@id":"https://www.guru99.com/selenium-github.html#schema-1155622","isPartOf":{"@id":"https://www.guru99.com/selenium-github.html#webpage"},"publisher":{"@id":"https://www.guru99.com/#organization"},"inLanguage":"en-US","mainEntityOfPage":{"@id":"https://www.guru99.com/selenium-github.html#webpage"}}]}
```
