Suites vs Specs Protractor

Suites are incredibly useful for organizing your tests.

The question actually goes down to differences between a suite and a test case in general. Quote from the wikipedia “Test suite” definition:

a collection of test cases that are intended to be used to test a
software program to show that it has some specified set of behaviours.
A test suite often contains detailed instructions or goals for each
collection of test cases and information on the system configuration
to be used during testing.

In other words, a test suite is a collection of specs/testcases united by a common property, logic. For instance, you may have suites for different types of functionality of your application, homepage, search etc:

suites: {
  homepage: 'tests/e2e/homepage/**/*Spec.js',
  search: [
    'tests/e2e/contact_search/**/*Spec.js',
    'tests/e2e/venue_search/**/*Spec.js'
  ] 
},

And/or, you may have specs grouped into suites by the type of tests:

suites: {
  smoke: 'tests/e2e/smoke/*.js',
  performance: 'tests/e2e/performance/*.js'
},

Or, you may put all of your “regression” tests into a separate suite. Or, you can apply your own logic to group specs.

It is important to note that a single spec can be a part of multiple test suites.

Leave a Comment