1

Question

Is it worth building a web application front-end for my department's automated regression tests? I've searched quite a bit and I don't think anything like this exits. Basically the web application would allow a user to specify a URL, expected inputs, and expected outputs and an expected return URL. On the back-end a headless browser would be running on the server to test the scenario just defined by the user, most likely using calls to a headless browser... I've searched quite a bit to see if something as simple as this exists but I haven't had any luck. I've found lots of tools for allowing programmatic operation of browser commands but a web front-end for testing another web application I have not.

Background

My team has dedicated automated regression tests that the testers run on their local machines. The tests are written in Python, utilize some Selenium integration plugins, and use an excel spreadsheet as input on what to test. They are maintained by the QA department.

Problem

  • Nobody outside the QA team knows how extensive these regression tests are because they exist only on individual laptops.
  • They have no central repository, and the dev team has no means of actively updating these tests as we build new features. We must leave it 100% up to the QA department.
  • The business analysts don't have access to the results of these tests. Because of all this, a lot of uncertainty exists around our automated testing increasing reluctance to change things without instructing the QA team to perform full scale manual regression tests...

This has led me to consider putting all of our Selenium tests in the cloud behind a user-friendly web front-end that anyone can use and access from anywhere. They could then easily create new tests using dropdown menus. Everyone, developers, testers, and business analysts, can see whats covered in a test sequence and update them as we add new features. I believe this would also make it easier to have Jenkins jobs trigger tests to run at timed intervals if web application exposed web service hooks for jenkins... But I feel like perhaps I'm re-inventing the wheel. Is what I'm proposing to build worth it?

Usman Mutawakil
  • 4,993
  • 9
  • 43
  • 80

1 Answers1

1

Personally i would not spend too much time in creating a website to accept user input to create a testscript. Instead I would spend that time in creating a solid test framework and use Jenkins to trigger the tests.

You also need to consider the 'website' maintenance in future. What will happen if some new feature has to be included in the website? QA/BA team will depend on the developer to add the feature.

I think it is better to use keyword driven framework - where you can write your entire test in spreadsheet. [In my project QA people who are not familiar with programming create test scripts with this approach].

As Jenkins web based application - anyone can trigger your automated regression tests. Even the BAs (in my project, that is what i have done). No technical skill is required. We can also pass parameters through jenkins. Parameters can be anything from text to a file. So, you can upload a file which contains the steps to be executed to the jenkins job and the rest should be taken care by your test framework.

You would definitely need a central repository. It is a must have. You can take a look at VisualSVN server. It is easy and FREE.


Keyword Driven framework using Selenium:

http://www.testautomationguru.com/keyword-driven-framework-for-localization-testing-using-selenium-webdriver/

Continuous regression & results:

http://www.testautomationguru.com/continuous-regression-testing-best-practises/

Smoke Test after each build:

http://www.testautomationguru.com/automated-smoke-test-best-practises/

vins
  • 15,030
  • 3
  • 36
  • 47
  • With the web application users would add new tests cases using the UI. Their would be no coding. Think of the web UI as a replacement to the excel spreadsheets we currently use locally. The whole point of the web UI is to make the process more user friendly...In your system do the project managers or business analysts look at your spreadsheets? – Usman Mutawakil Feb 28 '16 at 03:44
  • I totally got that from your question. If you have resources/time/budget - yes - go for it. It will be really nice to have an UI to create testscript. But - consider the maintenance part as well. Definitely it is not going to be just 1 time development activity and will use it for ever!! – vins Feb 28 '16 at 03:50
  • Thanks. I'm considering this option. Part of what has me avoiding it is that the spreadsheets don't seem to provide much transparency into our coverage of business requirements. Especially if they are inside jenkins and the results as well. Currently, when bugs are uncovered people start asking for more stringent testing but how does anyone know what that is if the test cases are embedded in Jenkins? – Usman Mutawakil Feb 28 '16 at 04:52