Bir muddettir kendi kabugumda kalip surekli uretim yapmak yuzunden herseyden cok geri kalmisim. Simdi acigi kapatma zamani. Cok konu var yakalamam gereken birden tamamen farkli bir ortama bakinca birseyleri anlamak cok da kolay olmuyor. O yuzden gecisi su sekilde planladim.
Once bildigim ortamda ortak olan konulari ogrenmeye calisacagim. Dolayisiyla beynimi once ortama alistirmak icin .NET uzerinde MVC yapisina uyum saglayip, testleri burada yazacagim. Sonra yapiya uyum sagladigimda geriye sadece isletim sistemi ile dil kalmis olacak.
Bu yuzden halihazirda kendim icin yazdigim ama henuz bitirmedigim programi yeni yapilar ile yazmaya karar verdim. Normalde VB.NET kullanmama ragmen C# a da asinayim dogal olarak. Ancak simdiye kadar sadece bakim yaptim yani hic yeni proje gelistirmedim.
Catiyi su sekilde kuruyorum.
Simdi adim adim ne yaptigima gelince
Once bildigim ortamda ortak olan konulari ogrenmeye calisacagim. Dolayisiyla beynimi once ortama alistirmak icin .NET uzerinde MVC yapisina uyum saglayip, testleri burada yazacagim. Sonra yapiya uyum sagladigimda geriye sadece isletim sistemi ile dil kalmis olacak.
Bu yuzden halihazirda kendim icin yazdigim ama henuz bitirmedigim programi yeni yapilar ile yazmaya karar verdim. Normalde VB.NET kullanmama ragmen C# a da asinayim dogal olarak. Ancak simdiye kadar sadece bakim yaptim yani hic yeni proje gelistirmedim.
git bash |
Catiyi su sekilde kuruyorum.
Dil | C# |
Ortam | MVC4 |
Yazilim ortami | Visual Studio 2010 |
Data baglantisi | Entitiy Framework |
BDD | Specflow |
Unit Test | MsTest.2010 |
Versiyon Kontrol | git ve bitbucket.com |
Simdi adim adim ne yaptigima gelince
- Bende zaten kurulu oldugu icin Visual Studio 2010 kullanacagim
- www.bitbucket.com da bir hesap actim. (isterseniz github.com dan da acabilirsiniz)
- git-bash veya git for windows'u indirip kurdum
- http://www.asp.net/mvc/mvc4 adresinden MVC 4 u indirip kurdum
- (Bu arada MVC 5.1 cikti tabi http://www.asp.net/mvc/overview/releases/mvc51-release-notes)
- Install-Package Microsoft.AspNet.Mvc -Version 5.1.0
- http://visualstudiogallery.msdn.microsoft.com/9915524d-7fb0-43c3-bb3c-a8a14fbd40ee adresinden specflow'u indirip kurdum.
- Diskte proje icin bir klasor actim
- bitbucket'e login olup "create repository" ile bir repo actim
- Git bash'a girip, Proje klasorune gectim. (cd ile eski usul :))
- sirayla su komutlari calistirdim
- git init
- git remote add origin https://username@bitbucket.org/user/repo.git
- yukaridaki kirmizi alani kendi bilgilerinizle degistirin.
- Visual Studio acip yeni bir proje actim. Visual C# / Web / ASP.NET MVC 4 Application 'u sectim ve klasor olarak yukaridaki actigim klasoru sectim.
- Sonraki ekranda Select a Template bolumunde "Internet Application", View Engine'e "Razor", Create a unit test project bolumune bir isim verdim ve OK'e bastim
- Razor'u secmemdeki temel etmen internette aradigimda TDD icin uygun olmasiydi
- Visual studio icinden Tools/Library Package Manager / Package Manager Console acip icinde "install-Package SpecFlow -ProjectName RM.Specs" yazip enter'a basarak yukledim. RM benim projemin adi bu arada
- sirayla sonra sunlari calistirdim
-
Install-Package SpecFlow.NUnitInstall-Package SpecRun.SpecFlow
- Test projesinin icinde Features diye bir klasor actim.
- klasore sag tiklayarak add new item -> SpecFlow Feature File secerek Restaurant diye bir feature ekledim
- Test projesinin icinde Steps diye bir klasor actim
- Restaurant.feature dosyasi icinde herhangi birseyi henuz degistirmeden sag tiklayip acilan menude "Generate Step Definition" i sectim. ve dosyayi Steps klasorune kaydettim
- test projesindeki App.Config dosyasinda su degisikligi yaptim
- <specFlow>
<!-- <unitTestProvider name="MsTest" /> -->
</specFlow> - Restaurant.feature dosyasi acikken visuaal studio'da sag tiklayip Run Specflow Scenarios u secerek testlerin calismasini sagladim.
- Test'ler Pending durumunda oldugu icin calismadilar ama Specflow Step'leri calisti. Yani bu asamaya kadar hersey dogru.
Calisma ortamimiz hazir olduguna gore bu haliyle git'e atabilirim.
git bash ile proje klasorunun icindeyken
git add .
git commit
(mesajinimizi yaziyoruz)
git push origin master
Gelismeleri paylasacagim.
Hiç yorum yok:
Yorum Gönder