Kristian Karl

Embed Size (px)

Text of Kristian Karl

  • Model-Based Testing

    Kristian Karl, Spotify

  • 1983 Started programming 1994 Testing and automation 1998 Consultant 2004 Discovered Model-Based Testing 2005 Founded graphwalker.org 2010 Test Manager @Spotify

  • Subscribers: Over 30 million Active users: Over 80 million Revenue paid to rightsholders: $3bn Number of songs: Over 30 million Number of playlists: Over 1.5 billion Available in 58 markets

    Andorra, Argentina, Austria, Australia, Belgium, Bolivia, Brazil, Bulgaria, Canada, Chile, Colombia, Costa Rica, Cyprus, Czech Republic, Denmark, Dominican Republic, Ecuador, El Salvador, Estonia, Finland, France, Germany, Greece, Guatemala, Honduras, Hong Kong, Hungary, Iceland, Ireland, Italy, Latvia, Liechtenstein, Lithuania, Luxembourg, Malaysia, Malta, Mexico, Monaco, New Zealand, Netherlands, Nicaragua, Norway, Panama, Paraguay, Peru, Philippines, Poland, Portugal, Singapore, Slovakia, Spain, Sweden, Switzerland, Taiwan, Turkey, UK, Uruguay and USA.

    Fun Facts

  • What is Model-Based Testing?

  • [Very] [and unscientific] brief history of MBT

    15 May, 1997 Software Quality Week Conference in May, 1997

    http://www.geocities.ws/model_based_testing/sqw97.pdf

    13:52, 30 December 2004First edit in Wikipedia

    https://en.wikipedia.org/wiki/Model-based_testing

    I met Harry Robinson May 2004http://www.harryrobinson.net/

    http://www.geocities.ws/model_based_testing/sqw97.pdfhttps://en.wikipedia.org/wiki/Model-based_testing

  • What is MBT?

  • What is MBT?

    Models are the expected behavior of a System Under Test.

  • What is MBT?

    Models are the expected behavior of a System Under Test.

    Models are much simpler than the the reality.

  • What is MBT?

    Models are the expected behavior of a System Under Test.

    Models are much simpler than the the reality. State models are a set of states and the

    relationships between them.

  • What is MBT?

    Models are the expected behavior of a System Under Test.

    Models are much simpler than the the reality. State models are a set of states and the

    relationships between them. From the models, test are automatically

    generated.

  • Not authenticated

  • Login using valid

    credentials

    Not authenticated

  • Login using valid

    credentialsAuthenticatedNot authenticated

  • Login using valid

    credentialsAuthenticatedNot authenticated

    VertexVerte

    x

  • Login using valid

    credentialsAuthenticatedNot authenticated

    VertexVerte

    x

    Edge

  • Use cases

    UI

    Payments systems

    Ads

    Workflow systems

    REST APIs

    Mobile

    Desktop

    Web

    Backend

    Real time systems

  • Why bother?

  • The incentive behind MBT

  • The incentive behind MBT

    MBT is [visual] collaborative.

  • The incentive behind MBT

    MBT is [visual] collaborative. Separation of test design from code

    implementation.

  • The incentive behind MBT

    MBT is [visual] collaborative. Separation of test design from code

    implementation. Test suites are generated

    automatically.

  • The incentive behind MBT

    MBT is [visual] collaborative. Separation of test design from code

    implementation. Test suites are generated

    automatically. Lower maintenance - higher return of

    investment.

  • Test execution

  • MBT execution

  • MBT execution

    Tests are generated automatically.

  • MBT execution

    Tests are generated automatically. Different test types can be generated.

    - Smoke tests- Functional - Non-functional, exhaustive tests

  • Q&A

  • References

    http://graphwalker.org/ https://github.com/GraphWalker/graphwalker-project https://github.com/GraphWalker/graphwalker-example https://github.com/spotify/python-graphwalker https://www.youtube.com/watch?v=idSgWX6rGdk https://www.youtube.com/watch?v=oWWiPGIFDAo

    http://graphwalker.org/https://github.com/GraphWalker/graphwalker-projecthttps://github.com/GraphWalker/graphwalker-examplehttps://github.com/spotify/python-graphwalkerhttps://www.youtube.com/watch?v=idSgWX6rGdkhttps://www.youtube.com/watch?v=oWWiPGIFDAo