Organizing the Code

Before we finish this session, let’s be kind to our future selves and tidy up a little. As we worked, we just created everything we needed inline in our features/step_definitions/step.rb file. We’ll move most of that stuff out of there, and put it into a more conventional place. Here’s a list of what we’d like to fix:

  • The application’s domain model classes should go into a lib directory in the root of the project.

  • The KnowsTheDomain module can move into its own file.

  • The transform can also move into its own file.

  • The steps file can be split to organize the step definitions better. This is arguably unnecessary for a project with only three step definitions, but we’ll do it anyway to illustrate how we’d do this on a ...

Get The Cucumber Book, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.