Tag: specsfor

SpecsFor.Mvc Updated (again!)

SpecsFor.Mvc 4.4.0 is now live!  This release includes improvements contributed by two very awesome individuals.  E-mail addresses containing a ‘+’ character now work correctly, and you can now wait for an element on a form to become visible using the fluent interface.  Read on to learn more about these changes! [more] First from Mark McCaigue:…

Read More

SpecsFor.Mvc and SpecsFor Helpers updated!

There are two new releases on the SpecsFor front today.  First, thanks to Neuhoffm again, SpecsFor.Mvc now supports radio buttons properly.  You can “check” a radio button by string value or by using a strongly-typed value: SUT.FindFormFor<Task>() .Field(m => m.Title).SetValueTo("use radio buttons") //By string… .Field(m => m.Complete, "false").Click() .Submit(); SUT.FindFormFor<Task>() .Field(m => m.Title).SetValueTo("use radio buttons") .Field(m…

Read More

SpecsFor.Mvc 4.2.0 Released!

There’s a new build of SpecsFor.Mvc available on NuGet tonight!  This version adds support for navigating to controllers within areas that are decorated with the RouteAreaAttribute class.  Now you can do things like NavigateTo<TController>() against controllers that are in areas without using the MvcFuture’s ActionLinkAreaAttribute. My thanks go out to Neuhoffm for this improvement!

Read More

SpecsFor 4.3.1, SpecsFor Helpers 1.4.1 released!

I have two bug-fix releases for you tonight.  First, SpecsFor now supports partial matching on List types, including generic lists.  It works exactly the same as an array.  Here are the passing specs to illustrate what you can do now: [Test] public void then_it_does_not_throw_on_a_matching_pair_of_objects() { var obj1 = new TestClass { Name = "Name", Items…

Read More

Enforce Project Conventions Using NUnit and SpecsFor

Does your company or project have certain conventions that you are required to follow? Maybe adding a copyright header to each file?  Or using the correct layer super-type for all your controllers, context, etc?  I work on a *lot* of projects these days, and I often forget to follow some of these conventions in my…

Read More

Introducing SpecsFor Helpers!

SpecsFor<Web> Helpers will help you write cleaner, easier-to-read (and maintain!) specs for your ASP.NET MVC applications.  It’s the latest addition to the SpecsFor family, and the first of the Helpers line that I’m working on.  Read on to see what it can do for you and your team! [more] I suppose this really doesn’t qualify…

Read More

SpecsFor 4.3.0 RC 10 available!

Yes, that does indeed say “RC 10.”  The 10th iteration of 4.3.0 is now available as a pre-release package on NuGet.  Read on to see what’s changed with partial matching in this go-round! [more] The big features in 4.3.0 all deal with strongly-typed partial matching.  The previous version added support for doing strongly-typed Looks.Like, and…

Read More

New Course: Automated Testing in ASP.NET With SpecsFor and SpecsFor.Mvc

My new Pluralsight course is now live!  This course covers everything you need to know to write maintainable unit, integration, and end-to-end tests using ASP.NET MVC and Entity Framework. If you work on ASP.NET MVC applications and are interested in automated testing, this course is for you!  Here’s a run-down of the major topics: ASP.NET…

Read More

SpecsFor 4.3.0 Release Candidate–Improved Partial Matching!

The new release candidate for SpecsFor adds some new capabilities for both Looks.Like and ShouldLookLike.  Read on to find out more! [more] First, Looks.Like now supports strongly-typed partial matching using lambda expressions, just like ShouldLookLike: public class when_verifying_with_a_partial_object : SpecsFor<object> { [Test] public void then_it_verifies_correctly_if_the_object_matches_the_specified_properties() { var myCar = new TrainCar {Name = "Simple Car",…

Read More

SpecsFor.Mvc 4.1.0 Released!

Hot on the heels of SpecsFor.Mvc 4.0 comes the 4.1.0 release!  This is a minor update, but it adds a very-useful capability. [more] Selenium WebDriver has always had the ability to wait for certain events to occur, such as a particular element becoming “visible” so that it could be interacted with.  Unfortunately, the code for…

Read More