So You Need To Involve Manual Testers In Cucumber Automation?

Are you contemplating on using manual tester writing English-like Gherkin Syntax via tools like SpecFlow or Cucumber for conducting UI test automation? Let us elaborate on the right way to do so. We will also shed some light on the pros and cons of using various approaches.

It is evident that in the current times, it is not sufficient to merely push best practices on large organizations. Therefore, it is imperative that we at least talk about the advantages and disadvantages of various approaches. Henceforth, we will be referring to all Gherkin style, that is, BDD collaboration tools as Cucumber owing to its high popularity. However, keep in mind that the ideas remain the same across all boards.

We will be focusing explicitly on UI test automation and what we do with these tools the most. We are not that big a fan of using excessive UI test automation, but this is something we will discuss later.

Using manual testers in automation

It is quite possible that you know using manual testers for automation is not wise. However, you do not have any other option since this is what your management has ordered. Such situations are not uncommon. Let us first elaborate on the optimal strategy you can opt for in such a case via the Gherkin style framework.

The primary goal is to use manual testers for writing Cucumber scenarios in the feature file. To make it clear, the following training needs to be given to manual testers.

  • They need Light IDE training, which would make them understand how feature files are to be written. The process of naming the file and where they are put is also included in this training.
  • Good Gherkin syntax training is also mandatory for all doing BBD.
  • They need to be given training on how to use the framework. This will ensure that they are aware of how the tests are run, and tags are used. They will also learn how different environments are pointed out.
  • It is also necessary that they learn using Cucumber features, including tables, examples, scenario context, and backgrounds, among others.

SMEs can take care of test automation associated with overhead, aka training. Manual testers should be trained in only relevant topics.

You will need someone who is competent and skilled a consultant for Cucumber related overhead who will be able to come in and handle the training. A lot of organizations lack the skill in-house, which is mandatory for proper Cucumber training.

A. The first option is having SDET handle step definitions

If this route is followed, it is the responsibility of SDET to create step definitions. Thus, SDET will need the following:

  • Excellent gherkin training
  • A proper strategy on managing step definitions from all manual testers involve
  • Training on regex patters

B. Manual testers can also create step definitions

If this route is opted for, it implies that measures have to be taken to male manual testers technically strong. They will need to be given training in the following:

  • They have to learn how API classes or Page objects are to be used for creating step definitions
  • Usage of IDE should be well understood which would allow them to code
  • Knowing how to use regex is mandatory

As you create step definitions, you will need to determine whether there are Page Objects already in place that you can use or not. This holds for both SDETs and manual testers.

A. In case the Page Objects are not in place

Manual testers will have to work alongside SDET so that page objects can be created

B. If the page objects are present

If this is the case, the test can proceed to production. The only thing that needs to be made sure is that SDETs are capable of supporting manual testers as they create page objects.

Is it possible for a few SDETs to support multiple applications and also create all page objects?

This would not be the best situation. However, our purpose is not to discourage you but merely present you with ideas and address your queries.

Btw, if you want to see these tips in code, as well as dozens of others, check out the Complete Selenium WebDriver with Java Bootcamp.

The ultimate question to tackle now is how the process can be optimized so that dependency is decreased while at the same time reducing the maintenance costs for the business?

The best solution, in this case, would be something that is not only easy to implement but easy to maintain as well.

What is the best way to go about involving manual testers in test automation with Cucumber?

You might now be wondering what would be the ideal process via which manual testers can be included in automation while decreasing complexity and dependency of the entire team and paying attention to their training. This is depicted by the orange and green ovals in the diagram.

If you analyze the diagram carefully, it will become clear that pushing all the technical aspects onto the SDETS can make sure that the amount of training required by manual testers is reduced.

This approach requires everyone to learn Cucumber. This is crucial since everyone is using the tool. It would also force the manual testers to acquire more information about how to use an IDE and understand test automation framework.

  • When it comes to technical aspects of automation, the involvement of manual testers is comparatively less. Mandatory training takes up several weeks. This makes sure that maintenance is not a problem, and no challenges arise owing to inefficiency in software development.
  • The burden would increase on SDETs so that they can keep up with all the incoming features, and this is how it should be. SDETS have years of experience in development and architecture and thus should have no problems in handling the technical aspect of things.
  • It is advisable to get rid of all the extra training that was considered mandatory for manual testers. Examples of this include using page objects, writing real codes, and managing code for step definitions. It is excellent for all automation endeavors that people not strong in technical aspects have less code writing to do. The thing that should be made sure is if someone is not efficient in development, he should not be given excessive technical work.
  • However, it is still imperative that manual testers learn writing good Gherkin.
  • Manual testers should also be trained in using Cucumber features for creating a scenario.
  • SDETs should take care of their job, which is to implement the framework and page objects along with creating step definitions.

What would be the best approach to get manual testers to become involved in test automation?

This is the question likely to arise if you have the option of using any solution you want.

This is the ideal scenario for those who have an option. With the way things are changing, it would not do any good for your business if you force someone into test automation if they do not have the proper training for the same.

▶️▶️Test automation is software development.

It does appear that an excessive number of tools in the industry have made test automation all the more difficult. If this premise is believed in, and if we avoid pushing manual testers into writing unit tests for the developers, one would wonder why they are forced into writing UI and API automation.

Use manual testers for:

  • UX testing,
  • Exploratory testing,
  • Product Ownership,
  • BAs,
  • And collaborators to find edge-case scenarios for automated testing.

Multi-billion organizations usually do not consider this an option owing to cultural and technical limitations. Therefore, it is imperative to look for the next best available option.

Take a look at the diagram and remove Cucumber from this equation. All the green ovals will then be gone. Thus, it implies that a lot of time and effort would be saved, which would have otherwise been utilized in understanding new technology. The only thing to focus on now is basic automation training. In addition to this, one also has to bear a lot of maintenance costs with every technology. Therefore, it would be better to use as little technology as possible.

The most efficient process in using manual testers in test automation

In this case, manual testers need to learn more about coding. This process becomes easier for manual testers if a well-defined test automation framework is in place that would minimize the risk of mistakes. It would also increase the chances of making test automation success. The automation creation can be guided by IDE. The code review process can make sure that mistakes are avoided as much as possible.

There are fewer obstacles to entry if no extra training is required for manual testers and SDETs on Cucumber specific syntax. This also implies that no additional tools have to be maintained, and it would not be excessively challenging to keep up with documentation. The workload would decrease substantially for SDET as they would not have to focus on maintaining step definitions.

Instead, it would be better if trained, and highly paid SDETs focus on automation framework and architecture as this would make sure that there is less chance of failure. It would also make the automation process easier for manual testers.

This does not imply that organizations can find success long term with test automation. They will have to encounter multiple challenges. However, if they focus on reducing training costs and complexities, things can become a whole lot easier.

What if you absolutely must use Cucumber?

Use the process that has been defined above. Allow manual testers to write feature files using highly trained Gherkin Syntax. The software development engineers in test can take care of the actual development of technical features. They will find it exceedingly difficult to keep up with the demand for manual testers as the number of manual testers who produce feature files is high, so this is one challenge that has to be tackled.

Btw, if you want to see these tips in code, as well as dozens of others, check out the Complete Selenium WebDriver with Java Bootcamp.

Conclusions

It is not always possible to opt for the best practices in multi-billion dollar organizations. Therefore, solutions need to be sought, which would work best despite the limitations.

If you have tried any one of these approaches, let us know about the challenges you had to face and their outcomes.

Nikolay Advolodkin is a self-driven SDET on a lifelong mission to create profound change in the IT world and ultimately leave a legacy for his loved ones

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store