Reading and Writing to the Database

Remember that we opened the connection to the database in Connecting to the Database, we told you that the connection is available to all code running on this thread. The code is failing when our AccountSteps definition tries to set the initial balance of the account directly (without going through the UI or the server). Once you think about it, you’ll realize that Cucumber and the server are running on different threads, so we need to open a connection to the database from the Cucumber thread as well.

We’ll need to access the database when we set up (or check) the state of our domain entities, so the logical place to open the connection is in KnowsTheDomain:

databases/01/src/test/java/support/KnowsTheDomain.java ...

Get The Cucumber for Java Book 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.