open your mind for opensource
TRANSCRIPT
• INTRO
• CHAPTER 1: VIQA - BEGINNING
• CHAPTER 2: GGA SELNIUM - LEGION
• CHAPTER 3: JDI - SYNERGY
• CONCLUSION
3
AGENDA
• Free
• Features already implemented
• Features already tested and proved on many projects
• You can see feedback and discuss features
• …
6
OPEN SOURCE
• Not all things can be OpenSource
• In most cases you have no guaranties*
• Rarely you can get detailed documentation
• No guaranties for your needs priority*
* Except charge support
8
OPEN SOURCE - МИНУСЫ
9
WARNING
•Use good proved solutions
• Save your time and effort
•Grow your tech skills
•Compare existing solutions
In case of nothing pleasing you – create your OpenSource
•No other frameworks solve your problem
• Some frameworks solve some of your problems but some can’t be solved due to architectural issues
• Framework freeze and or team not responsive
10
WHEN TO START YOUR OWN PROJECT?
Note: In other cases better join to good project
11
MY FRAMEWORKS
SQA DAYS 15GITHUB
1. I-Free
VIQA (C#)
Model Tests Generator
DB Utils, Services Utils
2. LiveTex
VIQA (Java)
VIQA-TDG
3. JDI
Web
Mobile
Desktop
Http…
13
BEGINNING
•Weak C# version
•No logging
•No chances to add logging
•No ways to override elements behavior
1. I-Free
Model Tests Generator
DB Utils, Services Utils
VIQA (C#)
Yandex Html Elements
• Framework for UI testing
• Language C#
• List of typed elements (Button, Dropdown, Form etc.)
•Any elements action can be customized
• Integrated logging on actions layer
14
VIQA
Mar 4, 2014
VIQA (C#)
16
REASONS TO GO OPEN SOURCE
• Code quality
• Usability
• Documentation: Description / Examples / Tutorials
• Support: CI/CD. Tests
Project quality
•Why not?
•New skills / knowledge / practice
• Soft Skills: Presentation, discussion
•Portfolio, respect
17
PRESENTAION
SQA DAYS 15
• Few new users
•Barantsev comment
Every TA should develop its own
bicycle above Selenium
For project?
For me?
18
LIVETEX - JAVA
• I-Free fall down
•Become QA Director
•…
•Profit!
• Interesting job
• Salary grow
•VIQA on Java
• Free access for all repository
• Simple way to show your experience to friends
• Not do your project very popular
19
OPEN SOURCE AS IS
•1 Contributor
•74 Commits
•7 Stars
•1 Fork
•1 Issues
•0 Pull requests
20
OPEN SOURCE AS IS Mar 4, 2014
22
EPAM – OPEN SOURCE
Life science
• Pipeline Builder• New Genome Browser• Miew – 3D molecular viewer• Indigo – chemical search tools• Parso – clinical dataset reader
Popular
• JDI – UI Automation Framework• Report Portal – Continuous reporting
• libObjCAttr• Merlin• XFramework• Wilma• Gepard• Constellation• Rapier
Other
24
GGA SOFTWARE - EPAM
Середина 2014 года• Pipeline Builder• New Genome Browser• Miew• Indigo• Parso• GGA Selenium Framework• … 10+
Open Source
Покупает
GGA Software• GGA Selenium Framework
• Internal project
• Client want to use projects with proven quality
• ???
•Go to Open Source
•Profit!!!
25
OPEN SOURCE
May 30, 2014
•8 Contributors
•417 Commits
•30 Stars
•38 Fork
•0 Issues
•0 Pull requests
26
OPEN SOURCE IN TEAM May 30, 2014
•31 Contributors (8/1)
•718 Commits (417/74)
•84 Stars (30/7)
•1.7 (3.5/3.3) Years
•88 Forks (38/1)
•88 Issues (0/1)
•74 Pull requests(36/1)
28
OPEN SOURCE PROMOTION
No one know your excellent framework?
•Hard to start use it
•Can’t understand/No examples
•Better OpenSource products present
•Unclear contribute procedure
29
FIRST PROBLEMS
VIQA и GGA Selenium – both in OpenSource but
• Small amount of users (10-20 men)
•No one contribute. Developed only by authors
Pros:
• VIQA – Flexible architecture
•GGA Selenium – many different functions
30
GGA + VIQA = JDI
Jan 14, 2016
• Simple manual, examples• Dozens of tutorial tests (in total 500+)• Lessons as presentations
•Promotion• Dozens speeches on Conferences • In 7 cities• 1 Meetup• Site, VK (154 men) and Facebook groups, • Skype Chat (80 men)
32
WHAT WE DO?
• Feedback monitoring (forums, support)• Stack overflow• Surveys, mail contacts, Skype Chat
•Actual tasks on Scrum board
•Contributors support• Personal• Tutorial
33
WHAT WE DO?
• Employee motivation(newcomers and regular)
•Accumulate ideas except loosing potential
•New clients
•More framework features
•More areas covered (web, mobile, desktop, http, bdd, chrome plugin etc.)
•More languages (Java, C#, Python*)
36
RESULT: FOR EPAM
• This is cool
•Professional grow (tech skills, knowledge etc.)
AOP, Python, Reflection, Lambdas etc.
• Respect
• Portfolio
• More potentials
37
RESULT: FOR ME
38
WHY YOU NOT IN OPEN SOURCE?
•А что можно?
•Да мои поделки никому не интересны
•У меня плохой код/боюсь критики
•Мой тестовый фреймворк очень сильно связан с текущим проектом/окружением/доменной областью
•Все права на мой проект принадлежат заказчику
•…
39
5 SECRETS FOR GOOD FRAMEWORK
0. Think about Open Source from the beginning
1. Split you framework from production project
2. Independency from project Specification
3. Project Customization – Single responsibility principle
4. Pay attention to Feedback
40
OPEN SOURCE PROMOTION
1. Talk about your project
2. Site, Social networks, meetups etc.
3. Simple fast feedback
4. Users and contributors list at start
5. Quizzes and votes
QUESTIONS
41
http://jdi.epam.com/
https://vk.com/jdi_framework
https://github.com/epam/JDI
roman.Iovlev
Contacts