Set Up a Continuous Testing Server to Run Selenium Tests in Minutes

Do it quickly using 100% free and open-source software, no previous CI/CT experience is required

Zhimin Zhan
8 min readMar 8, 2021

--

While Continuous Testing (CT, in short) is not a new term, it remains mysterious to many people, as they have never seen it working in software projects. In this article, I will show you how to set up a CT server from scratch to run a set of Selenium WebDriver tests on your machine in minutes. No previous CI/CT experience is required.

What are the differences between CI and CT servers? The short answer: CI server is suitble for managing executions of unit tests; CT server is suitable for managing executions of functional tests.

Every software you will use is 100% free, in both freedom and cost.

Objectives

  • Install and set up a CT server (BuildWise)
  • Create a CT project for a set of existing test scripts
  • Trigger a test execution of all test scripts with a click of a button
  • See test execution results on CT Server

Estimated time: 10–30 minutes. The majority of the time will be spent on installing prerequisite software such as Ruby and its libraries. If you have already had them on your machine, it will be much quicker.

Setting up a continuous integration/testing server from scratch might sound intimidating for some. Don’t worry, I am quite confident you can get it done after following the instructions in this article. Also, you can find some helpful screencast videos here.

The environment for this exercise is the Windows platform. For macOS/Linux users, the same steps can be done in a very similar process.

You don’t need to worry about the test script syntax yet (it is RSpec). For now, just focus on our main objective here: run a suite of functional tests (in this case: Selenium WebDriver tests for a web application) in a CT server, from scratch.

Prerequisite

--

--

Zhimin Zhan

Test automation & CT coach, author, speaker and award-winning software developer. Help teams succeed with Agile/DevOps by implementing real Continuous Testing.