Skip to content

BigDataRepublic/testing_for_ds_day_1_bdr

 
 

Repository files navigation


Conda Latest Release PyPI - Python Version wheel Code style Imports: isort

Testing for Data Science

Day 1

This training focuses on several aspects of PyTest. At the end of this training, you should be comfortable with marks, fixtures, parametrization, error handling and temporary_paths.

⚡ Installation


1. Virtual Environment

Create a virtual environment for this repo, for instance with Anaconda:

conda create --name testing_for_ds -y python=3.10
conda activate testing_for_ds

You can use the same virtual environment for the whole training. Note: if you just installed anaconda, you might have to initialize your terminal with conda init <SHELL_NAME> and restart your terminal afterwards.

2. Install dependencies

Install the project in develop mode, with:

pip install -e ".[develop]"

This will install all the dependencies listed in requirements.txt and requirements.dev.txt. Have a look at them to get an idea with what we're working.

3. setup pre-commit

We will be using pre-commit for this project, install it with:

pre-commit install

If you commit your code, pre-commit will run some checks. Only if you pass the checks, the commit is completed. For example, it checks whether you've used type-hinting. See .pre-commit-config.yaml for the full configuration.

4. create your own branch

git checkout -b <branch-name>
git push

📋 Assignment


After you completed the installation, work yourself through the exercises in the tests\test_<subject>.py. It's recommended to make at least the exercises marked with an '*', but try to make as many exercises as possible as they will cover even more information than given in the slides.

You've completed the assignment if:

  • You answered all exercises.
  • All the tests pass.
  • The pre-commit steps are successful.
  • You pushed your code to your personal branch.

Please let me know if you have any questions!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%