Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding test framework and continuous integration #17

Open
wisechengyi opened this issue Nov 14, 2016 · 4 comments
Open

Adding test framework and continuous integration #17

wisechengyi opened this issue Nov 14, 2016 · 4 comments

Comments

@wisechengyi
Copy link
Contributor

As the project grows, it becomes harder for quality control, i.e. to ensure any incoming change does not break anything in the past. E.g. we can use systems like TravisCI to trigger a build/test on every PR commit.

Challenges:

  • Building opencv library in CI
  • GUI testing for PyQt

I can probably take the initial hammering to get things going on the core library side, whereas places involving ^ challenges may require more thought.

@apockill
Copy link
Owner

I couldn't agree more. I think that the uFactory side of this fork is going to start building tests, but I'm not sure they've actually gotten pen on paper yet. I would rather start that here, so that it can be implimented cleanly, they can pull in changes at their own pace.

What testing framework do you think should be used? AFAIK unittest is already comprehensive. Perhaps we could have a directory for unittesting that could cover each module seperately? I'm not sure how to go about that...

On a side note, testing for Commands and Events could probably be more or less automated (eg, write a test for a generic command and generic event, and run it for all commands and events). That would definitely save some coding.

@wisechengyi
Copy link
Contributor Author

unittest should do. On top of that, pants would be a good tool to organize the building/testing/or potentially packaging things up in the future.

Here is some examples how python modules structured for tests. https://github.com/pantsbuild/pants/tree/master/examples

(I am an active contributor for https://github.com/pantsbuild/pants, so I may be super biased. https://pantsbuild.github.io/why_use_pants.html)

@wisechengyi
Copy link
Contributor Author

wisechengyi commented Dec 4, 2016

Quick update:
Based on http://answers.opencv.org/question/116776, the process may become a little harder to implement in CI, as it will likely involve a lot of back and forth.

I am still on this, but the timeline may vary.

@apockill
Copy link
Owner

apockill commented Dec 4, 2016 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants