Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Atdd In Practice (Agile Tour 2010 Qingdao)


Published on

  • Be the first to comment

Atdd In Practice (Agile Tour 2010 Qingdao)

  1. 1. ATDD In PracticeA NSN StoryPublic1 © Nokia Siemens Networks
  2. 2. Background Name : XU YI (徐毅) Title : Consultant, Agile Development Story • One release of an radio product’s transport platform • Multi-site development, hybrid style (waterfall, Agile) • I was Scrum Master / Test Automation Coach • Continuous integration, ATDD, Scrum, etc.Public2 © Nokia Siemens Networks
  3. 3. 60,000 people in more than 150 countries More than 600 Communications Service Provider customers World’s second largest telecommunications supplier Every second we touch the lives of millions of individuals.Public3 © Nokia Siemens Networks
  4. 4. Global presence- close to key markets and customers North East North America West & South Europe Greater China Latin America APAC Middle East & Africa R&D in all technology hotspots in the world. Major sites in Finland, Germany, China, India and US.Public4 © Nokia Siemens Networks
  5. 5. Unit And Acceptance TestsWhat is ATDD? Acceptance Test-Driven DevelopmentUnit And Acceptance Tests Unit Test : CODE-FACING  Express expectations that developers have about the code Acceptance Test : BUSINCESS-FACING  Express expectations that Product Owners or other business stakeholders have about externally visible behavior of the software under testPublic5 © Nokia Siemens Networks
  6. 6. Unit TDD ≠ Unit testing It is a DESIGN practice! Acceptance TDD is not just testing It is a REQUIREMENT ANALYSIS practice!Public6 © Nokia Siemens Networks
  7. 7. Acceptance-Test Driven Development (ATDD) CyclePublic Elisabeth Hendrickson Slide7 © Nokia Siemens Networks
  8. 8. ATDD: Discuss Concrete TestsPublic Elisabeth Hendrickson Slide8 © Nokia Siemens Networks Xu Yi (徐毅) / 24th October 2009 / Agile Tour Chengdu 2009
  9. 9. Requirement Analysis• i.e. Scrum Backlog Grooming – Product Owner, Team, Scrum Master – Clarify User Stories – Generate Acceptance TestsPublic9 © Nokia Siemens Networks
  10. 10. Case Study : A Simple Web Application• User could login using correct username and password – “Valid Login”• User can not login using incorrect username and/or password DISCUSSPublic10 © Nokia Siemens Networks
  11. 11. Valid LoginWe have two administrators, they must be able to login• Username : “demo”; password : “mode”.• Username : “dave”; password : “wibble”.So we have cases• Demo Login Successfully• Dave Login Successfully DISCUSSPublic11 © Nokia Siemens Networks
  12. 12. Demo Login SuccessfullyWhat should “demo” do to login?Eh, have to go to the login page firstNext, input and confirm the dataThen “demo” should be in the welcome page DISCUSS DESIGNPublic12 © Nokia Siemens Networks
  13. 13. ATDD: DevelopPublic Elisabeth Hendrickson Slide13 © Nokia Siemens Networks
  14. 14. Wibble Login SuccessfullyHow about “wibble” login?Wait a moment, is this case so similar to “demo” one?Let’s remove the duplication! DESIGNPublic14 © Nokia Siemens Networks
  15. 15. The duplicationThe only differences :• Username• PasswordLet’s put them as variables! (in the user keyword) DESIGNPublic15 © Nokia Siemens Networks
  16. 16. DEVELOPAnd more test automation design stuff …… DESIGN DEVELOPPublic16 © Nokia Siemens Networks
  17. 17. ATDD: DeliverPublic Elisabeth Hendrickson Slide17 © Nokia Siemens Networks
  18. 18. DELIVER – Test PartSome final clean up…Ok, here isAnd its logs … DELIVERPublic18 © Nokia Siemens Networks
  19. 19. ATDD Cycle using robotframework DELIVER DISCUSS Automated Acceptance e Cod Test cases (e.g. Robot) TDD Cycle DEVELOPPublic19 © Nokia Siemens Networks
  20. 20. Lessons Learned - Success Factors• Collaboration• Consider and integrate effort into whole development cycle• Reliable and robust tests• Frequent executionPublic20 © Nokia Siemens Networks
  21. 21. Lessons Learned - Shared Vocabulary• Discussing, designing and creating keywords for testing, build a domain-specific language that describes the system under test.• The terms are ubiquitous, which creates a shared vocabulary that everyone on the team has the same understanding of the words• On the way, misunderstandings are uncovered and discussed, different opinions are respected and considered.Public21 © Nokia Siemens Networks
  22. 22. EnvironmentMust• python 2.7• robotframework 2.5.1• jre-6u16-windows-i586-s.exe• robotframework-seleniumlibrary-2.4.win32.exeShould• robotide-0.26.1.win32.exe• wxPython2.8-win32-unicode-• rfdoc-0.2.tar.gz # robotframework website : http://robotframework.orgPublic22 © Nokia Siemens Networks
  23. 23. Retrospective Talk With Your Pair • MY FAVOURITE … • MY QUESTION … • MY SUGGESTION … DELIVERDISCUSS Automated Acceptance Test cases (e.g. Robot) Code TDD Cycle DEVELOPPublic23 © Nokia Siemens Networks
  24. 24. Thanks! Xu Yi (徐毅) twitter : kaverjody : kaverjody : kaverjody “Consultant, Agile Development” @ Nokia Siemens Networks Scrum / Agile Coaching, Testing & Test AutomationPublic24 © Nokia Siemens Networks
  25. 25. 关于我 曾任职诺基亚西门子网络公司全球精益及敏捷转型部门担任精益及敏捷顾问。 专长于大型组织(>500人)的敏捷迁徙转变。精通各种风格、类型的黑盒测试,包括验收性测试驱动开发、探索性测试、测试自动化等等。在辅助一个400人的大型组织搭建、规范化测试自动化系统及实践之后,选择传授敏捷/Scrum以及精益的要义,辅导其他组织进行转变。兴趣广泛,包括但不限于各种类型测试、敏捷/Scrum及精益。 国内敏捷会议的常客,近期的有敏捷中国2010,Scrum GatheringShanghai 2010,以及2009、2010年的敏捷全球之旅中国站活动。 更多信息请看LinkedIn主页: © Copyright 2010 Hewlett-Packard Development Company, L.P.
  26. 26. 联系方式惠普邮箱 Skype : KAVERJODY 新浪微博: 徐毅-Kaveri 腾讯QQ : 17376122 20 © Copyright 2010 Hewlett-Packard Development Company, L.P.