mobile / archive / rss
Posted on March 29, 2009
*

Cucumber + (Iron)ruby #6 : Første egne test

Da er vi klare for vår første egne test.

Jeg vil lære noe om ASP.Net MVC. Dette er lagret i en features-fil “nnug.feature”.
For at dette skal bli en kjørbar test trenger vi en fil med “step-definisjoner”. Step-filer lagrer vi i katalogen “step_definitions”. Dette er ruby-koden som kjøres av cucumber og definerer de skrittene vi bruker i testen vår. I vår step-fil ” har vi:

Her brukes regexmatching på teksten i vår features fil til å definere hva som skal skje i hvert step. @browser er et objekt som representerer nettleseren, styrt av watir. I dette tilfellet internet explorer. Det er definert i en environment.rb-fil som ligger i support-katalogen:

require 'spec/expectations'
require 'watir'
Browser = Watir::IE

# "before all"
browser = Browser.new

Before do
@browser = browser
end

# "after all"
at_exit do
browser.close
end
I “When” - skrittet har vi bare en utkommentert linje, siden vi ikke skal gjøre noe der i denne enkle testen.

I Then-skrittet så tar vi mot en parameter text, og sjekker om den fins i teksten på websiden.
Så det vi sjekker i denne testen er, når vi er på websiden localhost:2323/default.aspx, så skal vi ha teksten “Velkommen NNUG”på denns siden.

Når jeg kjører denne testen med "cucumber --language no features" blir den rød-
Hva må vi gjøre for å få en grønn test ?

Vi laster ned ASP.Net MVC fra codeplex, og lager et nytt prosjekt. Her kaller vi prosjektet NNUG, siden det ble presentert der. Vi setter portnummer for web-siten til 2323 så vi har dette klart til testen vår.

Vi endrer ingenting, vi bare starter det. Da ser vi denne websiden:


Når vi kjører testen blir den fremdeles rød.

Neste skritt er å endre koden så testen vår kan forventes å bli grønn. Fra dette:
til dette:

Vi kjører testen på nytt med "cucumber --language no features" . Og får nå dette skjermbildet:
En grønn cucumber-test.

PS!Jeg ser nå at jeg glemte “chcp 1252” så de norske tegnene ødelegger testene. Så husk chcp1252 som beskrevet i en tidligere post så får du penere bilder enn meg ;)

Comments (View)
blog comments powered by Disqus
follow me on Twitter