Aliencube

cloud-native open source developers community

BDD와 TDD의 차이

by Justin Yoo in Dotnet · 1 min read

알림: 이 포스트는 BDD 연작 시리즈 중 첫번째입니다. BDD와 TDD의 차이 SpecFlow와 FluentAssertions를 이용하여 BDD적용하기 #1 SpecFlow와 FluentAssertions를 이용하여 BDD적용하기 #2 BDD(Behaviour-Driven Development)와 TDD(Test-Driven Development)는 애자일 소프트웨어 개발 방법론에서 가장 널리 쓰이는 것들이다. 사실 xDD(X-Driven Development)라고 해서 수많은 X가 있긴 ...

SpecFlow와 FluentAssertions를 이용하여 BDD 적용하기 #2

by Justin Yoo in Dotnet · 2 min read

알림: 이 포스트는 BDD 연작 시리즈 중 세번째입니다. BDD와 TDD의 차이 SpecFlow와 FluentAssertions를 이용하여 BDD적용하기 #1 SpecFlow와 FluentAssertions를 이용하여 BDD적용하기 #2 앞서의 글에서 SpecFlow를 이용하여 BDD를 적용시켜 실패한 테스트 케이스를 작성하였다. 여기서는 FluentAssertions를 이용하여 이 테스트 케이스를 모두 통과시키도록 하자. Login 액션은 HomeController에 이미 구현되어 있다 ...

SpecFlow와 FluentAssertions를 이용하여 BDD 적용하기 #1

by Justin Yoo in Dotnet · 4 min read

알림: 이 포스트는 BDD 연작 시리즈 중 두번째입니다. BDD와 TDD의 차이 SpecFlow와 FluentAssertions를 이용하여 BDD적용하기 #1 SpecFlow와 FluentAssertions를 이용하여 BDD적용하기 #2 앞서의 글에서 BDD와 TDD의 차이를 간략하게 알아보았다. 더욱 자세한 내용은 인터넷을 뒤져보면 더 많이 나오니 생략하기로 하고, 이 글에서는 그렇다면 닷넷 애플리케이션을 개발하는 데 있어서 어떻게 BDD를 적용시킬 수 있을까에 대해 논의해 보도록 한다. ...

비주얼 스튜디오 2012에서 ASP.NET MVC 5 돌리기

by Justin Yoo in Asp Net-iis · 2 min read

비주얼 스튜디오 2012는 기본적으로 ASP.NET MVC 4까지 지원한다. 따라서, 기본으로 생성해주는 템플릿을 그대로 사용한다면 아무런 문제가 없지만, NuGet 패키지를 ASP.NET MVC 5로 업그레이드한다면 아래와 같은 에러를 볼 수 있을 것이다. [A]System.Web.WebPages.Razor.Configuration.HostSection cannot be cast to [B]System.Web.WebPages.Razor.Configuration.HostSection. Type ...

C# Coding Guidelines

by Justin Yoo in Dotnet · 4 min read

About the Guidelines The guidelines provide a practical way of developing .NET applications using C# 3.0 or later depending on versions that applications are using. The existing coding guidelines that Aliencube have been using were originally written in 2003 by Mike Kruger. Many ...

McCabe 소프트웨어 복잡도 지수

by Justin Yoo in Dotnet · 1 min read

소프트웨어 공학 쪽에서 나오는 얘기들 중에 코드 복잡도에 대해 얘기하다보면 항상 언급되는 용어가 있는데 바로 맥카비 복잡도 지수 McCabe's Cyclomatic Complexity 라는 것이 있다. 이와 관련한 논문은 궁금하면 직접 읽어보면 되고1, 그냥 간단하게 말하자면, 소프트웨어 코드가 복잡해지지 않게끔 간결하게 짜야 한단 얘기다. 이건 TDD를 프로젝트에 적용하다보면 꼭 겪는 문제이기도 한데, 메소드 하나가 엄청나게 길다든가, 복잡하다든가 해서 유닛테스트를 할 수가 없는 경우가 생긴다. ...