This project is read-only.

Github testing framework

Jun 29, 2015 at 1:04 AM
If we are moving to github, it would be nice to automatically run tests so we can verify any pull requests match our tests. Currently, our project uses MSTest, which does not play well with the typical Github/Travis-CI workflow which recommends NUnit:

http://docs.travis-ci.com/user/languages/csharp/

It appears it is possible to convert from MSTest to NUnit:

http://feelings-erased.blogspot.com/2013/12/moving-to-nunit-from-mstest-experience.html

But it looks like there isn't so much visual studio support for Nunit.

What do people think? Should we ditch MSTest for NUnit?
Jun 29, 2015 at 4:11 PM
F# community projects tend to run both Travis (for Linux/OSX) and AppVeyor (for Windows)

I think you can use MSTest on Windows with AppVeyor. But if you want Travis x-plat as well then I think converting to NUnit makes sense unless there's some x-plat MSTest runner I don't know about. NUnit is what normally gets used with F# community projects.

Best
Don
Jun 30, 2015 at 2:09 AM
Thanks Don, that's most helpful. I think the x-platform argument is a strong one and consistency across projects would be desirable if we intend forging closer links with the F# community.

Thoughts?
Jul 12, 2015 at 2:12 AM
Thanks Don for the advice!

So I just changed all the MS Unit Tests over to NUnit. I used the 3.0 pre-release version of NUnit (which is described as stable enough for production code, and removes some features from 2.X series that I figured we should just avoid from the get go).

Nunit isn't quite as pretty in visual studio, but all the tests work just fine from the command line, so this should enable to x-platform testing on git.
Jul 12, 2015 at 9:34 AM
Just finished getting all the tests to run in mono, much more of a pain than I thought it would be.

Information on how to run the tests is now available in an added README file:

https://bio.codeplex.com/SourceControl/latest#bio/TESTING_README.md
Jul 22, 2015 at 7:18 PM
This was a lot of work Nigel! I updated us to the latest 3.0 pre-release (beta3) and pushed it up.