dmey / synthia

📈 🐍 Multidimensional synthetic data generation with Copula and fPCA models in Python
https://dmey.github.io/synthia
MIT License
57 stars 9 forks source link

Explain how to run the test suite #21

Closed khinsen closed 3 years ago

khinsen commented 3 years ago

Describe the bug There is a test suite, but the documentation does not explain how to run it.

Here is what works for me:

  1. Install pytest.
  2. Clone the source repository.
  3. Run pytest in the root directory of the repository.
dmey commented 3 years ago

Testing is something done at development so we documented it at https://github.com/dmey/synthia/blob/master/DEVELOP.md#testing. Do you find this confusing -- if so we can expand/move that section

khinsen commented 3 years ago

Update: I found the short reference to tests under "development notes". But testing is something that many users do right after installation, so it should be explained there, and also list the required dependencies (pytest).

dmey commented 3 years ago

@khinsen I appreciate your point about this but I am not too keen with this being an issue and the change proposed in #22. As I see it, testing in not generally part of the installation of a Python package (differently than lower level languages where you need to compile from source). Here it is a given that tests have already been conducted before the software is released so I would keep information about testing in https://github.com/dmey/synthia/blob/master/DEVELOP.md#testing as this is related to software development.

khinsen commented 3 years ago

@dmey Does this work for you in practice? I always run tests after installing Python packages that I plan to use seriously, and I do see failures from time to time. Most often they are due to changes in dependencies, sometimes due to platform-specific behaviour.

dmey commented 3 years ago

I think it's generally fair to assume that tests cover most situations however we cannot guarantee that the software will install function as expected on every system and specific configurations -- a trivial example could be not having enough disk space. Although I agree that testing is a good practice, I expect most (Python) end-users to install the software without testing. For advanced users or developers interested in specific development guidelines and testing we advise users to refer to the development notes from the readme.

dmey commented 3 years ago

@khinsen would you be OK to close this?

khinsen commented 3 years ago

Done!