Presentation from GDG DevFest Ukraine 2015 - the biggest Google related event in the country. October 23-24, Lviv. Learn more at http://devfest.gdg.org.ua/
QA tech lead. Whom is this presentation for? Team players, developers and testers. What do we want? A coffee break! (…Let’s put it into our ToDo list by now.) Developer N Tester M
about managers? Automated testing is often: • too opaque to QA leads; • too foreign to Dev leads; • a silver bullet to product owners. What do we want? Detect problems and solve conflicts as early as possible. Product Owner O Team Lead P
My name is Daryna Chernysheva. • I’ve been in software testing since 2009. • Test frameworks design is my main skill. • I like sci-fi, popular science, gadgets, and metal music. Daryna C Standup Monster
responsibility; • Lack of quality reviews and cooperation; • A single person works on both planning and development; • Great time and effort investment (not necessarily legitimat e). «MY PRECIOUS»
tribe aren’t properly set up; • Cross-tribe reviews are mainly accusatory; • Different tribes have separate workflows, discussions, et c. «TRIBAL SOCIETY»
Struggle for locators: History QA: May we have a unique classname here? DEV: We have no time for that now. QA: Ah, thanks for nothing! We’ll create our own...
Struggle for locators: Results • solving an avoidable problem becomes a goal a nd an enjoyable challenge; • extra efforts are put into testing and test suppor t; • framework complexity increases.
2. Establishing a process to fulfill technical reques ts coming from QA team; 3. Creating artifacts (items in issue tracker, share d documents etc.) TECH TALK TRIBE DARLING TROUBLE TOKENS
Ineffective tests: History DEV: We need to check our builds. Which tests ca n we use? QA: Take these. DEV: How long does the execution take? QA: It takes 4 hours.
Ineffective tests: History DEV: We need to check our builds. Which tests ca n we use? QA: Take these. DEV: How long does the execution take? QA: It takes 4 hours. DEV: Are you serious? No way guys.
Ineffective tests: History DEV: We need to check our builds. Which tests ca n we use? QA: Take these. DEV: How long does the execution take? QA: It takes 4 hours. DEV: Are you serious? No way guys. QA: Take it or leave it.
Ineffective tests: Results • The tests and the application exist separately; • Time is wasted on double verifications; • Project cannot reap all CI benefits.
Ineffective tests: Solution 1. Discussion. 2. Heartbeat tests for environment. 3. Specific sets of tests for requested test run durati on. 4. Optimized smoke suite including integration tests .
Non-optimized tests: History PROD: You don’t execute tests often enough! QA: Tests execution takes a lot of time because o f operations A and B. In fact, tests are short.
Non-optimized tests: History PROD: You don’t execute tests often enough! QA: Tests execution takes a lot of time because of operations A and B. In fact, tests are short. DEV: Why don’t we use unit tests? Unit tests do n’t do A or B.
Non-optimized tests: Results • QA launch tests rarely. • Product owners want to hire new QA team. • Developers want to replace user-level tests wi th unit tests.
Non-optimized tests: Solution 1. Discussion. 2. DEVs can help QAs shorten the road. 3. DEVs perform code reviews and give advices on solution design. 4. Product owners approve excluding long tests fr om testing scope.
Torrent of questions: History QA: Is this a bug? QA: And this one? QA: What about this one? DEV: Stop, please! QA: Why, we’re doing what we’re paid for!
Torrent of questions: Solution 1. Discussion. 2. Bug-or-feature algorithm: • aspects to analyze; • escalation order. 3. Happy medium between speed and formality.
A game of telepaths: History QA: Does it really works this way? DEV: Yes, it does. QA: Why haven’t you told us before? DEV: You have never asked. QA: We have to discard what we’ve done because of you !
A game of telepaths: Preconditions • There are cross-dependent features / user stories; • Implementation details are changed during developm ent; • Private in-tribe discussions take place.
A game of telepaths: Solution 1. Discussion. 2. Active groups are formed by tasks, not by tribes. 3. All task-related discussions involve all stakeholder s. 4. Follow-us are written to keep everyone at the sam e page.
XXX: He is wrong. XXX: It doesn’t work this way. XXX: Though, at the second thought... XXX: And I don’t want to offend him. TECH TALK TRIBE DARLING TROUBLE TOKENS
XXX: He is wrong. XXX: It doesn’t work this way. XXX: Though, at the second thought... XXX: And I don’t want to offend him. XXX: And what should I tell him, after all? TECH TALK TRIBE DARLING TROUBLE TOKENS
XXX: He is wrong. XXX: It doesn’t work this way. XXX: Though, at the second thought... XXX: And I don’t want to offend him. XXX: And what should I tell him, after all? XXX: I’d better switch the team. I don’t want to mes s with this stuff. TECH TALK TRIBE DARLING TROUBLE TOKENS
• Problems keep building up in silence; • The final breakthrough is painful to everyone. • The risk of losing a team member increases. TECH TALK TRIBE DARLING TROUBLE TOKENS
1. Understanding that people don’t read minds. 2. Discussions involving 3rd person – a trusted individua l. 3. Live communications: no chats or e-mails! TECH TALK TRIBE DARLING TROUBLE TOKENS