To wersja testowa nowego serwisu infoShare Academy — wyświetlane treści i oferta nie są wiążące ani kompletne

Testing

Frontend testing

Frontend testing is crucial as it helps detect bugs and issues before deploying an application to production, ensuring user satisfaction with the interface.

Duration
21h · 3 days
Who it's for

Ideal for teams that…

1 Frontend developers
2 Software testers
3 UI/UX designers
4 Project managers
Outcomes after the program

Software testing and quality — automation and QA methodologies.

This training will help you gain the skills necessary to ensure the quality and reliability of frontend applications and provide a better understanding of the frontend testing process.

Program

What we actually do

  • · Types of tests – how to choose them and what do they mean? Unit tests Component tests Integration tests
  • · To test or not to test?
  • · What does it mean that code is “testable”? Code composition vs. “testability” Implementation details vs. contracts vs. side effects How to handle third-party code in tests Edge cases How to avoid “cementing” implementation
  • · Structure of a good test DRY vs. DAMP vs. WET Boundaries After* and Before* – how to avoid duplication and complications Organization: test suites and test cases Well-chosen assertions Loose vs. tighter assertions Asymmetric matchers Custom matchers Circular assertions
  • · Mocking and test doubles – mocks, stubs, and spies When to use these techniques What to mock Library support Record & Replay pattern Pitfalls of mocking
  • · Integration tests and MSW Where are the boundaries? What are the components we integrate? How to provide data in tests?
  • · Data in tests Fixtures – are they always the right way? How to generate data Snapshots Test data sets (data providers) – write one test for many cases
  • · Testing techniques TDD vs. Code First vs. Test First How to get more from react-testing-library (RTL)? Selectors in RTL – byRole etc. RTL queries – get vs. find vs. query Asynchronous testing with waitFor, act, and find* Testing hooks in RTL Interactions in RTL – user-event Snapshot testing – yay or nay Test Utils – how to extend custom test utilities without creating a mess Custom assertions Jest matchers Utils/Helpers and building abstractions
  • · Code coverage Types of coverage When coverage helps and when it gives a false sense of security
  • · Introduction to e2e tests Introduction to e2e testing Tooling and setup e2e testing challenges
  • · State management and tests What and how to test when using Redux or similar solutions Testing code that uses React Context
Every module is adapted to your stack and context. The above is a starting point — not a fixed agenda.
How we work

From brief to retro in 30 days.

01

Brief & diagnosis

A call with the team lead + a short survey for participants. We define goals, gap and context.

02

Program customization

We adapt modules, case studies and code examples to your stack. Approval in 5 days.

03

Workshop

Trainer-led sessions, hands-on, code review. Mentor available between sessions too.

04

Retro + report

Outcome report for the team and lead. 30 days of consulting included.

Inquiry

Send a brief. We'll reply within 1 day.

After a short brief we'll prepare a program and a quote. No obligations — it's just a starting point.

Quote within 48h of the brief
First session within 30 days
Pilot before the full decision
VAT invoice, payment in instalments possible

How we handle your data

We process your business data (name, work e-mail, phone number, company, job title) in order to handle your corporate training inquiry and prepare an offer. The data controller is infoShare Academy Sp. z o.o., Al. Grunwaldzka 472B, 80-309 Gdańsk. Providing the data is voluntary but necessary to receive a response. You have the right to access, rectify, erase or restrict the processing of your data and to object to it. Full information is available in our data processing notice.

Optional marketing consents

The controller of your personal data is infoShare Academy sp. z o.o. The rules for processing personal data are set out in the Privacy Policy and the Data Processing Notice.