BDD (behavior-driven development) suunnittelumenetelmän käyttö open source projektissa, case: SpecFlow/.NET.



Samankaltaiset tiedostot
Microsoft Lync 2010 Attendee

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

TIEKE Verkottaja Service Tools for electronic data interchange utilizers. Heikki Laaksamo

7. Product-line architectures

You can check above like this: Start->Control Panel->Programs->find if Microsoft Lync or Microsoft Lync Attendeed is listed

7.4 Variability management

WAMS 2010,Ylivieska Monitoring service of energy efficiency in housing Jan Nyman,

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

Smart access control.

FinFamily Installation and importing data ( ) FinFamily Asennus / Installation

Arkkitehtuuritietoisku. eli mitä aina olet halunnut tietää arkkitehtuureista, muttet ole uskaltanut kysyä

Uusi Ajatus Löytyy Luonnosta 4 (käsikirja) (Finnish Edition)

Lakimies PDF. ==>Download: Lakimies PDF ebook

Windows Phone. Module Descriptions. Opiframe Oy puh Espoo

Efficiency change over time

Specifica(on by Example Vaa(mukset ja testaus ke9erissä projekteissa. Marko Taipale

Lab SBS3.FARM_Hyper-V - Navigating a SharePoint site

Salasanan vaihto uuteen / How to change password

Choose Finland-Helsinki Valitse Finland-Helsinki

Uusi Ajatus Löytyy Luonnosta 3 (Finnish Edition)

Atostek. KanTa-konseptin tuotteistaminen ja vienti ulkomaille

DIGITAL MARKETING LANDSCAPE. Maatalous-metsätieteellinen tiedekunta

Miksi Suomi on Suomi (Finnish Edition)

Voice Over LTE (VoLTE) By Miikka Poikselkä;Harri Holma;Jukka Hongisto

FinFamily PostgreSQL installation ( ) FinFamily PostgreSQL

Constructive Alignment in Specialisation Studies in Industrial Pharmacy in Finland

1.3Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä

Opintomatkat PDF. ==>Download: Opintomatkat PDF ebook By Risto Antikainen

Use of spatial data in the new production environment and in a data warehouse

ebooks in the libraries ebib trial and results

Skene. Games Refueled. Muokkaa perustyyl. for Health, Kuopio

Nuku hyvin, pieni susi -????????????,?????????????????. Kaksikielinen satukirja (suomi - venäjä) ( (Finnish Edition)

1.3 Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

Attribuuttipohjainen käyttövaltuuksien hallinta Case Dreamspark Premium

GPRS-lisäpalvelu INTERNET-ASETUKSET

Helsinki Region Infoshare 2013

Get Instant Access to ebook Kasvuyritys PDF at Our Huge Library KASVUYRITYS PDF. ==> Download: KASVUYRITYS PDF

VAASAN YLIOPISTO Humanististen tieteiden kandidaatin tutkinto / Filosofian maisterin tutkinto

Teollinen Internet & Digitalisaatio 2015

Oma sininen meresi (Finnish Edition)

ATLAS-kartan esittely - Peli palveluiden yhteiskehittämisen menetelmistä Päivi Pöyry-Lassila, Aalto-yliopisto

Julkaisun laji Opinnäytetyö. Sivumäärä 43

16. Allocation Models

Tässä ohjeessa käydään läpi sosiaalisen median verkkopalveluiden lisätoimintojen lisääminen verkkosivuillesi.

LANSEERAUS LÄHESTYY AIKATAULU OMINAISUUDET. Sähköinen jäsenkortti. Yksinkertainen tapa lähettää viestejä jäsenille

Lab A1.FARM_Hyper-V.v3

Lyhyt johdatus ketterään testaukseen

Immigration Studying. Studying - University. Stating that you want to enroll. Stating that you want to apply for a course.

Land-Use Model for the Helsinki Metropolitan Area

Ostamisen muutos muutti myynnin. Technopolis Business Breakfast

Sisällysluettelo Table of contents

Software Signing System System overview and key domain concepts

==>Download: Lakimies PDF ebook By Allan Särkilahti

1. SIT. The handler and dog stop with the dog sitting at heel. When the dog is sitting, the handler cues the dog to heel forward.

AYYE 9/ HOUSING POLICY

National Building Code of Finland, Part D1, Building Water Supply and Sewerage Systems, Regulations and guidelines 2007

Miten strategiset muutokset saadaan parhaiten aikaan - Tunnista myös kompastuskivet

Mitä uutta ConfigMgr 2012 SP2 ja 2016? Panu Saukko ProTrainIT Oy

Matkustaminen Majoittuminen

SOA SIG SOA Tuotetoimittajan näkökulma

Matkustaminen Majoittuminen

anna minun kertoa let me tell you

OFFICE 365 OPISKELIJOILLE

Mitä Piilaaksossa & globaalisti tapahtuu ja mitä Tekes voi tarjota yrityksille

1. Liikkuvat määreet

The Use of Hardware Simulation in Smartphone Projects

Käyttöliittymät II. Käyttöliittymät I Kertaus peruskurssilta. Keskeisin kälikurssilla opittu asia?

NetPro projektin kokemuksia - Hajanaisia poimintoja kuuden vuoden Leonardo-projektin varrelta, ja vähän muualtakin

812336A C++ -kielen perusteet,

BLOCKCHAINS AND ODR: SMART CONTRACTS AS AN ALTERNATIVE TO ENFORCEMENT

Kuvakkeet asiaankuuluvien tietoluokkien esittämiseksi Yhteentoimivuus. Elinkeinonharjoittajan nimi. Internet-yhteys. Maantieteelliset rajoitukset

Information on Finnish Language Courses Spring Semester 2018 Päivi Paukku & Jenni Laine Centre for Language and Communication Studies

Network to Get Work. Tehtäviä opiskelijoille Assignments for students.

Information on Finnish Language Courses Spring Semester 2017 Jenni Laine

Security server v6 installation requirements

LYTH-CONS CONSISTENCY TRANSMITTER

Vertaispalaute. Vertaispalaute, /9

Sisäänrakennettu tietosuoja ja ohjelmistokehitys

Expression of interest

TW-LTE 4G/3G. USB-modeemi (USB 2.0)

Sivuston tiedotwixaccounting.com

Opiskelijat valtaan! TOPIC MASTER menetelmä lukion englannin opetuksessa. Tuija Kae, englannin kielen lehtori Sotungin lukio ja etälukio

Security server v6 installation requirements

Get Instant Access to ebook Satukirja PDF at Our Huge Library SATUKIRJA PDF. ==> Download: SATUKIRJA PDF

Sivuston tiedotqbsupportcustom erservice.com

Tarua vai totta: sähkön vähittäismarkkina ei toimi? Satu Viljainen Professori, sähkömarkkinat

WP3 Decision Support Technologies

Laiteriippumaton UI Ajaxilla ja Javalla

Other approaches to restrict multipliers

Kaivostoiminnan eri vaiheiden kumulatiivisten vaikutusten huomioimisen kehittäminen suomalaisessa luonnonsuojelulainsäädännössä

Green Growth Sessio - Millaisilla kansainvälistymismalleilla kasvumarkkinoille?

SIMULINK S-funktiot. SIMULINK S-funktiot

Platform economy is more than Uber. Heikki Ailisto, VTT Oy

toukokuu 2011: Lukion kokeiden kehittämistyöryhmien suunnittelukokous

Information on Finnish Courses Autumn Semester 2017 Jenni Laine & Päivi Paukku Centre for Language and Communication Studies

Elämä on enemmän kuin yksi ilta (Finnish Edition)

Globaalisti Hajautettu Ohjelmistokehitys Mitä, Miksi & Miten? Maria Paasivaara

Citizen s skill in 2010s: Programming the Windowsphone. Kai Lindgren, Industrial Production/Metropolia

Varmista oma paikkasi tulevaisuuden digitaalisilla markkinoilla. IPR-aamiaisseminaari, Ravintola Pörssi,

Transkriptio:

BDD (behavior-driven development) suunnittelumenetelmän käyttö open source projektissa, case: SpecFlow/.NET. Pekka Ollikainen Open Source Microsoft CodePlex

bio Verkkosivustovastaava Suomen Sarjakuvaseura ry alk. 08/2013 Web-ohjelmoinnin erikoistumisopinnot Arcada AMK 2009-2010 HUK Tampereen yliopisto

Scripts for all Reasons 1 Elokuvan tekemisen ja ohjelmistokehityksen samanalaisuuksia: Käsikirjoitus(script) vs. vaatimusmäärittely(requirments) Storyboards vs. Mockups Digital film distribution vs. Distrobution via app stores

Scripts for all Reasons 2 Käsikirjoitus/vaatimusmäärittely dokumentit kertovat millainen elokuva/ohjelmisto halutaan tehdä ja miten Käsikirjoitus koostuu kohtauksista, vaatimusmäärittelyt featureista(feature) ja skenaarioista(scenarios) Käsikirjoituksella on muoto ja funktio Vaatimusmäärittelyllä muoto ja ohjelmistolla on funktio

Behaviour Driven Developement behavior-driven development (BDD) is a software development process based on testdriven development how software development should be managed by both business interests and technical insight use of specialized software tools to support the development process

Cucumber Gherkin language Documenting examples way that it can be easily understood both by stakeholders and by Cucumber Gherkin can be call a programming language but its primary goal is human readibility Write automate tests that can be read like documentation

Gherkin syntax Structure and meaning using set of special keywords Feature Background Scenario Given When Then

Cucumber:Living documentation Living: Cucumber testaa kehitettävää järjestelmää jatkuvasti automaattisesti, että se toimisi kunnolla kun otetaan lopulta käyttöön.. Documentation: Cucumber fasiloi hyvän keskustelun/kommunikaation siitä, miten sovellus toimii nyt ja miten se pitäisi toimia jatkossa..

Esimerkkikoodia Feature: Write blog As a blog owner I can write new blog post Scenario: Write blog Given I am on the blog homepage When I click "New Post" link And I fill "My first blog" as Title And I fill "Test content" as content And I click "Post" button Then I should see the blog I just posted

Esimerkkikoodia Feature: Credit card payment As a online shopper I want to pay through my Credit card So that I can buy stuff online instead of visiting the super market Scenario: transaction completed successfully Given... When... Then... Scenario: Credit card is invalid Given... When... Then...

How Cucumber executes a scenario

Write scenario at Gherkin

Add SpecFlow Library

GenerateStepDefinition

Does the Step definitions have matching C# code?

FAIL!!Test Execution Report

Calling for Matching C#Code..

How to apply MVC to Mobile Applying MVC to mobile projects http://senchaproject.codeplex.com/wikipage? title=how%20to%20apply%20mvc%20to%20 mobile%20project&referringtitle=home

Our scenarios Scenario:Android device Given Android access the application And OS configuration N When Switcher is On Then UI will be rendered with UI library X Scenario:iPhone device Given iphone access the application And OS configuration N When Switcher is On Then UI will be rendered with UI library Y Scenario:Windows phone device Given Windows phone access the application And OS configuration N When Switcher is On Then UI will be rendered with UI library Z

Project statistics

History

lähteet: CODEMagazine, May/June 2013 Instant Cucumber BDD How-to, Packt 2013 The Cucumber Book, The Pragmatic Programmers,2012 Cucumber Recipes, The Pragmatic Programmers,2013 Projektiyhdistys/PRY/Projektitoiminta 1/2013

Johtopäätöksiä Cucumber Luonnollinen kieli ja keskustelun rakenteet ohjelmistosuunnittelun lähtökohtana demokraatinen suunnittelukieli +Vaihteittainen työskentelymalli -käyttöönotto ohjelmistohankkessa ei yksinkertaista