What are the Slack Archives?

It’s a history of our time together in the Slack Community! There’s a ton of knowledge in here, so feel free to search through the archives for a possible answer to your question.

Because this space is not active, you won’t be able to create a new post or comment here. If you have a question or want to start a discussion about something, head over to our categories and pick one to post in! You can always refer back to a post from Slack Archives if needed; just copy the link to use it as a reference..

Good morning everyone, is only for un

U01A1HDSVS8
U01A1HDSVS8 Posts: 17 🧑🏻‍🚀 - Cadet

Good morning everyone,
is https://documentation.spryker.com/v4/docs/t-testing-tdd-scos only for unit test or should it be possible to implement tests, that e.g. write to the database as well?

Comments

  • UQ958DA4U
    UQ958DA4U Posts: 232 🧑🏻‍🚀 - Cadet
    edited September 2020

    It is possible to implement integration tests and E2E tests with Spryker and Codeception. It's just not documented all too well (or at all, actually). Have a look at other tests in the test suite to get some examples.
    The important part is switching out dependencies using the ContainerHelper in your Tester and using the TransactionHelpers.

  • U01A1HDSVS8
    U01A1HDSVS8 Posts: 17 🧑🏻‍🚀 - Cadet

    The TransactionHelper seems like good start. But I get an “Unable to open connection” exception from Propel. Does it read the database credentials from the project or do I have to specify it again for the test suite somewhere?

  • U01A1HDSVS8
    U01A1HDSVS8 Posts: 17 🧑🏻‍🚀 - Cadet

    Ok, running the tests inside the container does help. Thank you @UQ958DA4U

  • UQ958DA4U
    UQ958DA4U Posts: 232 🧑🏻‍🚀 - Cadet

    You need to make sure to run in the testing environment. So running docker/sdk testing ... is important here.

    Look out though, after having gone into test mode, several things will have been switched off. You must use docker/sdk up again, to recreate Scheduler and a few other services.