Course Info
Main advantage | Learning how to maintain code, especially when introducing new changes is slow and you get a lot of bugs with every change. After this course, your developers will start testing their code more effectively or improve their current practices significantly. This will speed up your team and they’ll introduce less bugs with each change. |
Duration | a) half-days: 5 days x 4 hours (including breaks) b) full-days: 3 days x 7 hours (including breaks) |
Format | workshop (70% workshop / 30% lecture) |
Venue | a) online or b) client’s office or other place chosen by the client, in Europe |
Enrollment | in-house course for a group of people within one company |
Group size | up to 10 delegates |
Course language | English, Polish or both during the same training |
Course Syllabus
- Testing with pytest
- What testing is for?
- Overview of Available Frameworks (unittest vs pytest vs doctest)
- pytest Fundamentals
- Launching Tests
- Fail Fast Mode (-x Switch)
- Printing Local Variables (-l Switch)
- Quiet Output (-q Switch)
- Testing both Happy and Sad Paths
- Testing Edge and Corner Cases
- Fixtures
- Unique Temporary Directory for Test Run
- Fixtures Scopes – Sharing Fixture Instances between Tests
- Fixture Dependencies
- Fixture Finalisation
- Grouping Tests into Classes
- Skipping Tests
- Selenium
- Selenium Architecture
- Basics of Selenium
- Locating Elements
- Working with Forms
- Subprocesses
- CSS & XPath Selectors
- Selenium IDE
- Selenium Grid
- Waits
- Page Objects
- Descriptors
- Navigating History
- Cookies
- Web Application Architecture
- Accessing Database with SQLAlchemy
- Installation
- Connecting
- Defining and Creating Tables
- Creating new Records
- Sessions
- Bulk Creating (optional)
- Rolling Back
- Querying (Select Statements)
- Filtering
- Basics of Aggregation (optional)
- Relationships (optional)
- Queries with Joins (optional)
- Deleting Rows (optional)
- SQLAlchemy Core
Collaboration Process
- Form. You fill out the form at the bottom of the page.
- Free Consultation. We arrange a free, non-binding online meeting that should last no longer than 50 minutes. From the first contact, full confidentiality is observed, and if necessary, we can start by signing an NDA. The purpose of this conversation is to thoroughly discuss your situation and needs, so we can prepare a solution for you in the next step.
- Solution Proposal + Follow-up Consultation. After the consultation, we analyze your situation and prepare a tailored solution proposal (training and/or consulting). We discuss this proposal during another free consultation.
- Formalities. Signing the contract and making the payment (prepayment). The training date is reserved upon payment.
- Training Sample. If needed, we can precede the main training with a 60-minute training sample to ensure that it is worth your while to cooperate with us.
- Training and/or Consulting Activities.
- Post-training Support – tailored individually to your needs.
References

Very inspiring training. I really appreciate the way Chris managed to walk us through the complex world of machine learning using Python. Good course materials updated real time. Highly recommend.
Krzysztof Gębal
Finance Director at DNB Bank Polska S.A.

Well prepared training and reasonably passed knowledge, thanks to which we develop better services.
Arkadiusz Baraniecki
Infrastructure Team Manager at allegro.pl

Chris recently taught a four day class on Machine Learning with Python four our team. The class was very good with the right balance of theory and practice. I cannot think of a better way to give a four day class about such an extensive topic.
Nicolas Leveroni
Head of Krakow Product Control Analytics at HSBC