Ayende @ Rahien

Hi!
My name is Oren Eini
Founder of Hibernating Rhinos LTD and RavenDB.
You can reach me by phone or email:

ayende@ayende.com

+972 52-548-6969

, @ Q c

Posts: 6,124 | Comments: 45,475

filter by tags archive

More xUnit tweaks, dynamic test skipping

time to read 1 min | 99 words

For a long time, xUnit’s dev has resisted adding support for skipping a test dynamically. You could create your own Fact class and handle that yourself, but that was quite a lot of work, for something very specific.

In RavenDB, we had the need to dynamically decide whatever the test can run based on the actual test situation, so I decided to add this to our xUnit fork. This turned out to be really simple to do. Just three lines of code Smile

https://github.com/ayende/xunit/commit/82accb4c850a3938187ac334fb73d6e81dc921e3#diff-3c2b9f2cb8392f32456d0bf81151b59fR57


Comments

Chris Marisic

I really like xUnit, but some of their dogmatic choices really irritate me. This is one of those times they choose to be dogmatic over actually getting shit done.

They make users jump through hoops just so they can stay on their high and mighty horse.

I wonder how many contributors to xUnit have all built the very same things they refuse to allow into the project in their own real systems. I suspect it would be more than half.

chris mckelt

I went the attribute based approach inheriting from [Fact].

This way I had a global setting to run/ignore tests marked with the [OptionallyIgnoreTestFact] attribute at run-time.
https://github.com/chrismckelt/XUnit.OptionallyIgnore

Scooletz

@ChrisMarisic, +1 against xUnit dogmatism. For example, Assert with a message http://xunit.codeplex.com/workitem/4638 That's why I prefer to stick to NUnit. It's simple and let's you express in your own way.

Chris Marisic

@Scooletz it's crazy to me to see the xUnit official response was basically "you suck". Providing additional context is ALWAYS A win. Boggles my mind to see people opposed to additional context. Everything is meaningless without context.

Chris Marisic

edit if slorion isn't your codeplex account, replace "you" with "slorion"

Comment preview

Comments have been closed on this topic.

FUTURE POSTS

  1. RavenDB 3.5 whirl wind tour: You want all the data, you can’t handle all the data - 10 hours from now
  2. The design of RavenDB 4.0: Making Lucene reliable - about one day from now
  3. RavenDB 3.5 whirl wind tour: I’ll find who is taking my I/O bandwidth and they SHALL pay - 2 days from now
  4. The design of RavenDB 4.0: Physically segregating collections - 3 days from now
  5. RavenDB 3.5 Whirlwind tour: I need to be free to explore my data - 4 days from now

And 14 more posts are pending...

There are posts all the way to May 30, 2016

RECENT SERIES

  1. RavenDB 3.5 whirl wind tour (14):
    29 Apr 2016 - A large cluster goes into a bar and order N^2 drinks
  2. The design of RavenDB 4.0 (13):
    28 Apr 2016 - The implications of the blittable format
  3. Tasks for the new comer (2):
    15 Apr 2016 - Quartz.NET with RavenDB
  4. Code through the looking glass (5):
    18 Mar 2016 - And a linear search to rule them
  5. Find the bug (8):
    29 Feb 2016 - When you can't rely on your own identity
View all series

RECENT COMMENTS

Syndication

Main feed Feed Stats
Comments feed   Comments Feed Stats