"Тестирование в agile в среде виртуализации...

14
Testing in Agile. From Scrum to Kanban. Virtual development environments possible issues on the live projects Prepared by Vladimir Sidorenko

Upload: dataart

Post on 14-Apr-2017

330 views

Category:

Education


3 download

TRANSCRIPT

Page 1: "Тестирование в Agile в среде виртуализации Vagrant+Docker", Владимир Сидоренко, Senior QA (DataArt)

Testing in Agile. From Scrum to Kanban. Virtual development environments possible issues on the live projects

Prepared by Vladimir Sidorenko

Page 2: "Тестирование в Agile в среде виртуализации Vagrant+Docker", Владимир Сидоренко, Senior QA (DataArt)

Type: WEB Methodology: Scrum Team: DA 10 people Tools:

• Jira;• GitHub;• Vagrant+Docker+Virtual Box

Languages: • Java;• JavaScript(Angular)

Project inputs:

Page 3: "Тестирование в Agile в среде виртуализации Vagrant+Docker", Владимир Сидоренко, Senior QA (DataArt)

Roles and Activities

Page 4: "Тестирование в Agile в среде виртуализации Vagrant+Docker", Владимир Сидоренко, Senior QA (DataArt)

Artifacts

Term Definition

User Stories Something a user wants and associated acceptance criteria. For example, “As a Facebook user, I need an ability to retrieve a link to someone's else entry so that I can share it via other social networks or send by mail to my friends”

Epics A collection of User Stories

Backlog A list of requirements for a Product or Sprint

Page 5: "Тестирование в Agile в среде виртуализации Vagrant+Docker", Владимир Сидоренко, Senior QA (DataArt)

Activities and ceremonies

Term Definition

Sprints (Iterations) Time-boxed effort to create a “Done” product Increment

Sprint Planning Time-boxed effort to plan the Sprint by the Scrum team

Grooming “Quick” sprint pre-planning , where the whole team required

Daily Stand-ups Time-boxed effort to share the status, usually takes 10 minutes

Sprint Retrospective Time-boxed review of the Scrum Team’s performance during the last Sprint in order to improve in the next Sprint

Page 6: "Тестирование в Agile в среде виртуализации Vagrant+Docker", Владимир Сидоренко, Senior QA (DataArt)

Scrum Board

ToDo In Dev Dev Review

Ready For Test

In Test Test Review

Ready For

Merge

Do not merge(

On Hold)

Done

Ticket 6 Ticket 3 Ticket 2 Ticket 1 Ticket N

Ticket 5 Ticket N

Ticket 4

Page 7: "Тестирование в Agile в среде виртуализации Vagrant+Docker", Владимир Сидоренко, Senior QA (DataArt)

QA Engineer role and testing process1. Communication and kick-offs. Define the requirements of the

ticket before it goes to In Development. You need to understand what actually stakeholders want.

2. Outputs from kick-off need to be put to Acceptance criteria of the story

ACs to written in Gherkin language. Example:Scenario 1– login pageGiven user is on the Login PageWhen user fills in the correct credentials in the input fieldsAnd clicks on Submit buttonThen he is redirected to the home page

Why should we use this approach? For the ease of writing acceptance automated tests.

3. Branch testing. Types used: Exploratory + Regression tests.To deliver: evidences + resultsIf story bug – back in Dev. If new one – create another ticket

Page 8: "Тестирование в Agile в среде виртуализации Vagrant+Docker", Владимир Сидоренко, Senior QA (DataArt)

4 . Writing tests: smoke checklists; automated scripts

5. Improvement ideas.6. Unit and back-end acceptance tests

Development process issues

• New tickets to the current and planned sprint• Huge change requests• Change requests after the kick-offs (time!)

As a result – wrong estimates, sprint pumping, angry team members)

Page 9: "Тестирование в Agile в среде виртуализации Vagrant+Docker", Владимир Сидоренко, Senior QA (DataArt)

Moving to Kanban

• WIP limit!• Less ceremonies. Kick-off and stand-up is a must• No iterations

Quick Status Filters: In Dev(2), Dev Review, Ready To Test, In Test, In Test Review(1), Ready To Merge

ToDo DEV max 3 TEST max 2 ACCEPT max 4 Done

Ticket 6 Ticket 3 Ticket 2 Ticket 1

Ticket 5 Ticket 7

Ticket 4

Page 10: "Тестирование в Agile в среде виртуализации Vagrant+Docker", Владимир Сидоренко, Senior QA (DataArt)

Quick Status Filters: In Dev(2), Dev Review(1), Ready To Test, In Test, In Test Review(1), Ready To Merge

ToDo DEV max 3 TEST max 2 ACCEPT max 4 Done

Ticket 6 Ticket 3 Ticket 11 Ticket 2 Ticket 1

Ticket 5 Ticket 7 Ticket 12

Ticket 4 Ticket 8 Ticket 3

PROFIT!

Page 11: "Тестирование в Agile в среде виртуализации Vagrant+Docker", Владимир Сидоренко, Senior QA (DataArt)

Virtual environments

Vagrant – virtual machine manager which allows you to script the virtualmachine configuration. Works in combination with Virtual BoxCompatible OS: Mac, Windows, Linux

Official site states:Run a single command — "vagrant up" — and sit back as Vagrant puts together your complete development environment. Say goodbye to the "works on my machine" excuse as Vagrant creates identical development environments for everyone on your team.

Actual:• Installation problems(path, etc)• VB version compatibility!• Resources consumption• Sudden issues on different environments

Page 12: "Тестирование в Agile в среде виртуализации Vagrant+Docker", Владимир Сидоренко, Senior QA (DataArt)

Docker is a tool for building and deploying applications by packaging them into lightweight containers. A container can hold pretty much any software component along with its dependencies (executables, libraries, configuration files etc.), and execute it in a guaranteed and repeatable runtime environment.

• Used by testers• Different containers:

frontend, backend and db

• VPN issues• Jenkins creds

Page 13: "Тестирование в Agile в среде виртуализации Vagrant+Docker", Владимир Сидоренко, Senior QA (DataArt)

Conclusions

• It’s not all about scrum. You may even mix best methodology practices;

• Agile - process visibility, communication and team play;• Agile tester should have more responsibility and abilities to

improve the product• Configurable vm managing software is not always a thing you

can treat easily and without time consuming work• You have to learn, learn and of course to learn always!

Page 14: "Тестирование в Agile в среде виртуализации Vagrant+Docker", Владимир Сидоренко, Senior QA (DataArt)

Thank you for attention!

Here should be funny picture…But No.)