Anzeige
Anzeige

Más contenido relacionado

Anzeige

BDD mit Machine.Specifications (MSpec)

  1. BDD MIT MACHINE.SPECIFICATIONS
  2. Kontakt Alexander Groß Dipl.-Ing. (BA) @agross http://therightstuff.de agross@therightstuff.de
  3. keine vorher festgelegte Agenda keine Rollenaufteilung in „Sprecher“ und „Zuhörer“ alle sind gleich keine endlosen Foliensätze Erfahrungs- austausch im Vordergrund Selbstorganisation keine vorher definierten „Slots“ „Konferenz aus Kaffeepausen“ Teilnahme ist kostenlos
  4. netopenspace.de
  5. Aaron Jensen, Alexander Groß, Jacob Lewallen, smaclell, Jeffrey Olson, Barry Woods, Lee Henson, Stephen Czetty, SaintGimp, Ivan Korneliuk, Laurent Kempé, abombss, Sean Carpenter, Jeffery Olson, James Gregory, Scott Parker, Chris Bilson, Cristian Prieto
  6. Signal vs. Noise
  7. [TestClass] public class AccountControllerTest { [TestMethod] public void LogOn_Post_ReturnsRedirectOnSuccess_WithoutReturnUrl() { AccountController controller = GetAccountController(); LogOnModel model = new LogOnModel() { UserName = "someUser", Password = "goodPassword", RememberMe = false }; ActionResult result = controller.LogOn(model, null); Assert.IsInstanceOfType(result, typeof(RedirectToRouteResult)); RedirectToRouteResult redirectResult = (RedirectToRouteResult)result; Assert.AreEqual("Home", redirectResult.RouteValues["controller"]); Assert.AreEqual("Index", redirectResult.RouteValues["action"]); Assert.IsTrue(((MockFormsAuthenticationService)controller.FormsService) .SignIn_WasCalled); } A A A
  8. [TestClass] public class AccountControllerTest { [TestMethod] public void LogOn_Post_ReturnsRedirectOnSuccess_WithoutReturnUrl() { AccountController controller = GetAccountController(); LogOnModel model = new LogOnModel() { UserName = "someUser", Password = "goodPassword", RememberMe = false }; ActionResult result = controller.LogOn(model, null); Assert.IsInstanceOfType(result, typeof(RedirectToRouteResult)); RedirectToRouteResult redirectResult = (RedirectToRouteResult)result; Assert.AreEqual("Home", redirectResult.RouteValues["controller"]); Assert.AreEqual("Index", redirectResult.RouteValues["action"]); Assert.IsTrue(((MockFormsAuthenticationService)controller.FormsService) .SignIn_WasCalled); }
  9. „There are only two hard problems in Computer Science: cache invalidation and naming things.“ -- Phil Karlton
  10. public class When_a_user_logs_in_with_valid_credentials { It should_authenticate_the_user; It should_redirect_to_the_home_page; }
  11. public class When_a_user_logs_in_with_valid_credentials { Establish context = () => { // Arrange }; Because of = () => { // Act }; It should_authenticate_the_user = () => { /* Assert */ }; It should_redirect_to_the_home_page = () => { /* Assert */ }; } A A A
  12. = () => l<Tab> () => |; ll<Tab> () => { | }; P_nis Operator
  13. Establish Because It It It Cleanup 1 x 1 x + base classes n x [SetupForEachSpecification] 1 x
  14. Exception Handling
  15. Catch.Exception(() => { fails(); }); Templates http://therightstuff.de/2010/03/03/MachineS pecifications-Templates-For-ReSharper.aspx
  16. Behaviors
  17. Reporting
  18. Niceties  IAssemblyContext  ReSharper Annotations  Side-By-Side Specs  TeamCity-Support  Mighty Moose
  19. Web Testing mit Selenium RC
  20. Downloads CI Builds http://teamcity.codebetter.com/ nuget Install-Package machine.specifications OpenWrap o add-wrap machine.specifications
  21. Get involved https://github.com/machine/machine.specifications
  22. Get involved Mailing List groups.google.com/group/machine_users Samples github.com/agross/duplicatefinder github.com/agross/mspec-samples Extensions github.com/BjRo/Machine.Fakes github.com/jamesbroome/Machine.Specifications.Mvc
Anzeige