You do not need automation engineer - Sqa Days - 2015 - EN
-
Upload
yasha-kramarenko -
Category
Technology
-
view
894 -
download
0
Transcript of You do not need automation engineer - Sqa Days - 2015 - EN
![Page 1: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/1.jpg)
You don’t need Automation Engineer!
@yashaka
![Page 2: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/2.jpg)
Automation is hard, isn’t it?
![Page 3: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/3.jpg)
It isn’t:p
![Page 4: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/4.jpg)
It isn’t:p
(at least WEB UI)
![Page 5: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/5.jpg)
if you know how to “cook” it ;)It isn’t:p
![Page 6: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/6.jpg)
But no rush:)
![Page 7: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/7.jpg)
Let’s start from beginning…
![Page 8: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/8.jpg)
Product
![Page 9: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/9.jpg)
![Page 10: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/10.jpg)
Use cases (draft)Tree
shleep
eat
run
hang
Holes
shleep
eat
run
During All activities:
sh-shispering
Special Cases:
GIVEN shleepingWHEN 2 meters to somebody
THEN become invisible
Transitions:
tree > holes
tree < holes
![Page 11: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/11.jpg)
Choosing high priority functionalityTree
shleep *
eat *
run *
hang *
Holes
shleep *
eat *
run *
During All activities:
sh-shispering
Special Cases: *
GIVEN shleepingWHEN 2 meters to somebody
THEN become invisible
Transitions:
tree > holes *
tree < holes *
![Page 12: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/12.jpg)
To implement first & fastTree
shleep *
eat *
run *
hang *
Holes
shleep *
eat *
run *
Transitions:
tree > holes *
tree < holes *
![Page 13: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/13.jpg)
Scenario (End to End)go to hole
run
go to tree
hang
eat
go to hole
shleep
![Page 14: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/14.jpg)
Tracking coverageTree
shleep
eat e
run
hang e
Holes
shleep e
eat
run e
During All activities:
sh-shispering
Special Cases:
GIVEN shleepingWHEN 2 meters to somebody
THEN become invisible
Transitions:
holes > tree e
holes < tree e
![Page 15: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/15.jpg)
A bit messy?
![Page 16: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/16.jpg)
be DRY ;)
Improve visibility
![Page 17: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/17.jpg)
Actions\Context Holes Tree sh-shispering?
run !!e ! !
hang - !!e !
eat !! !!e !
shleep !!e !! !
- shleep invisible ? !! !
Transitions: holes > trees e holes < trees e
![Page 18: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/18.jpg)
Actions\Context Holes Tree sh-shispering?
run !!e ! !
hang - !!e !
eat !! !!e !
shleep !!e !! !
- shleep invisible ? !! !
Transitions: holes > trees e holes < trees e
hole in coverage
![Page 19: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/19.jpg)
E2Ego to hole
run
go to tree
hang
eat
go to hole
shleep
1-Feature test
go to tree
shleep invisible
Finalise smoke coverage
![Page 20: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/20.jpg)
E2Ego to hole
run
go to tree
hang
eat
go to hole
shleep
1-Feature test
go to tree
shleep invisible
assert shispering
Use possibilities to improve coverage
![Page 21: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/21.jpg)
Actions\Context Holes Tree sh-shispering?
run !!e ! !
hang - !!e !
eat !! !!e !
shleep !!e !! !
- shleep invisible ? !!f !f
Transitions: holes > trees e holes < trees e
![Page 22: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/22.jpg)
Done with Smoke? - Proceed to Full Acceptance with FT
Actions\Context Holes Tree sh-shispering?
run !!e !f !f
hang - !!e !e
eat !!f !!e !f
shleep !!e !!f !f
- shleep invisible ? !!f !f
![Page 23: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/23.jpg)
Coverage tips: Yes
Functional Use Cases
High priority,
(user will definitely do on regular basis)
![Page 24: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/24.jpg)
Coverage tips: No
low-priority checks
“different values” checks
![Page 25: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/25.jpg)
Actions\Context Holes Tree sh-shispering?
run !!e ! !
hang - !!e !
eat !! !!e !
shleep !!e !! !
- shleep invisible ? !!e !
Transitions: holes > trees e holes < trees e
![Page 26: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/26.jpg)
No low-priority checksActions\Context Holes Tree sh-shispering?
run !!e ! !
hang - !!e !
eat !! !!e !
shleep !!e !! !
- shleep invisible ? !!e !
![Page 27: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/27.jpg)
Actions\Context Holes Tree sh-shispering?
run !!e ! !- fast
- slow ? ?
hang - !!e !- low
- high ? ?
eat !! !!e !- much
- a bit ? ?
shleep !!e !! !
- shleep invisible ? !!e !
No “different values” checks
![Page 28: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/28.jpg)
Actions\Context Holes Tree sh-shispering?
run !!e ! !- fast
- slowhang - !!e !
- low- high
eat !! !!e !- much
- a bitshleep !!e !! !
- shleep invisible ? !!e !
No “different values” checks
different variations of same “function”
![Page 29: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/29.jpg)
Should be covered on “unit testing” level
different variations of same “function”
- fast- slow
- low- high
- much- a bit
(giving the same “user flow”)
![Page 30: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/30.jpg)
We are here => => Only:functional
high priority use cases
different variations
of same “function”Here =>
![Page 31: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/31.jpg)
Avoid =>move
additional requirements, like “different kind of names
for entities”, “function variations”, etc…
<= to
=> from
![Page 32: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/32.jpg)
Where is code ?
![Page 33: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/33.jpg)
Keep calm:)
![Page 34: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/34.jpg)
From
![Page 35: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/35.jpg)
To
![Page 36: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/36.jpg)
Actions
run, hang, eat, sleep create, edit, delete, toggle, toggle all
Contexts
holes, treesfitlers:
all, active, completed
![Page 37: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/37.jpg)
The same ;)
![Page 38: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/38.jpg)
go to hole
run
go to tree
hang
eat
go to hole
shleep
Scenario (End to End)
![Page 39: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/39.jpg)
Scenario (End to End)given at todomvc
add "a"
toggle "a"
filter active
filter completed
edit "a" to "a edited"
toggle "a edited"
…
![Page 40: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/40.jpg)
Add expected resultsgiven at todomvc
add "a"
toggle "a"
filter active assert no tasks
filter completed
edit "a" to "a edited"
toggle "a edited" assert no tasks
…
![Page 41: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/41.jpg)
Implicit checks are ok in “nearest steps”given at todomvc
add "a"
toggle "a"
filter activeassert no tasks
filter completed
edit "a" to "a edited"
toggle "a edited"assert no tasks
…
![Page 42: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/42.jpg)
Demo
![Page 43: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/43.jpg)
Let’s start coding ;)given at todomvc
add "a"
toggle "a"
filter active assert no tasks
filter completed
edit "a" to "a edited"
toggle "a edited" assert no tasks
…
![Page 44: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/44.jpg)
Help computer to read it in JavagivenAtTodoMVC();
add("a");
toggle("a");
filterActive(); assertNoTasks();
filterCompleted();
edit("a", "a edited");
toggle("a edited"); assertNoTasks();
//…
![Page 45: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/45.jpg)
public class TodoMVCTest {
@Test public void testTasksLifeCycle(){ givenAtTodoMVC(); add("a"); toggle("a"); filterActive(); assertNoTasks(); filterCompleted(); edit("a", "a edited"); toggle("a edited"); assertNoTasks(); //... }}
![Page 46: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/46.jpg)
public class TodoMVCTest {
@Test public void testTasksLifeCycle(){ givenAtTodoMVC(); add("a"); toggle("a"); filterActive(); assertNoTasks(); filterCompleted(); edit("a", "a edited"); toggle("a edited"); assertNoTasks(); //... }}
?
![Page 47: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/47.jpg)
public static void givenAtTodoMVC(){ open("https://todomvc4tasj.herokuapp.com/"); newTask.shouldBe(enabled);}
givenAtTodoMVC();
![Page 48: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/48.jpg)
public static SelenideElement newTask = $("#new-todo");
newTask
CSS Selector
![Page 49: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/49.jpg)
CSS Selector ?
![Page 50: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/50.jpg)
![Page 51: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/51.jpg)
![Page 52: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/52.jpg)
![Page 53: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/53.jpg)
![Page 54: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/54.jpg)
![Page 55: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/55.jpg)
[id=“new-todo"] = #new-todo
![Page 56: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/56.jpg)
public static SelenideElement newTask = $("#new-todo");
newTask
[id=“new-todo"] <=> #new-todo
![Page 57: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/57.jpg)
public static void add(String taskText) { newTask.setValue(taskText).pressEnter();}
add("a");
![Page 58: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/58.jpg)
public static void toggle(String taskText) { tasks.findBy(exactText(taskText)).$(".toggle").click();}
toggle("a");
![Page 59: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/59.jpg)
public static void toggle(String taskText) { tasks.findBy(exactText(taskText)).$(".toggle").click();}
toggle("a");
![Page 60: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/60.jpg)
public static ElementsCollection tasks = $$("#todo-list>li");
tasks
![Page 61: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/61.jpg)
public static ElementsCollection tasks = $$("#todo-list>li");
tasks
![Page 62: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/62.jpg)
![Page 63: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/63.jpg)
public static void toggle(String taskText) { tasks.findBy(exactText(taskText)).$(".toggle").click();}
toggle("a");
![Page 64: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/64.jpg)
![Page 65: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/65.jpg)
public static void filterActive(){ $(By.linkText("Active")).click();}
filterActive();
![Page 66: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/66.jpg)
By.linkText("Active")
![Page 67: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/67.jpg)
public static void assertNoTasks() { tasks.filterBy(visible).shouldBe(empty);}
assertNoTasks();
![Page 68: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/68.jpg)
tasks.filterBy(visible).shouldBe(empty);
![Page 69: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/69.jpg)
public class TodoMVCTest {
@Test public void testTasksLifeCycle(){ givenAtTodoMVC(); add("a"); toggle("a"); filterActive(); assertNoTasks(); filterCompleted(); edit("a", "a edited"); toggle("a edited"); assertNoTasks(); //... }}
![Page 70: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/70.jpg)
open("https://todomvc4tasj.herokuapp.com/"); newTask.shouldBe(enabled);
newTask = $("#new-todo");tasks = $$("#todo-list>li");
newTask.setValue("a").pressEnter();
tasks.findBy(exactText("a")).$(".toggle").click();
$(By.linkText("Active")).click();
tasks.filterBy(visible).shouldBe(empty);
![Page 71: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/71.jpg)
Easy?
![Page 72: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/72.jpg)
End to Endgo to hole
run
go to tree
hang
eat
go to hole
shleep
Unit/1-feature-per-test
go to tree
shleep invisible
Coverage Style
![Page 73: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/73.jpg)
End to End Unit/1-feature-per-test
Coverage Style
public void testFiltering(){ givenAtTodoMVC(); add("a"); toggle("a"); filterActive(); assertNoTasks(); filterCompleted(); edit("a", "a edited"); toggle("a edited"); assertNoTasks(); //...}
public void testDelete(){ givenAtTodoMVC(); add("a"); delete("a"); assertNoTasks();}
![Page 74: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/74.jpg)
End to End Unit/1-feature-per-test
Advantages
+ more coverage in less time with less efforts during POC
implementation
+ integration coverage
+ in case of bugs, gives more complete report
+ easier to identify reason from the report
=>
+ less time and efforts in support
![Page 75: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/75.jpg)
End to End Unit/1-feature-per-test
When to use?
+ when start, during POC for framework
+ in a rush to cover a lot of existed features
+ for integration coverage
+ for new features
+ after POC is approved, on regular
basis
![Page 76: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/76.jpg)
Wasn’t it easy? :)
![Page 77: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/77.jpg)
Easy tools?
![Page 78: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/78.jpg)
Java: Selenide
Python: Selene is coming…
C#: NSelene is coming…
Ruby: Capybara
? JavaScript: Protractor
? PHP: Codeception
![Page 79: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/79.jpg)
How to start?Choose language
Learn language (books, interactive tutorials, koans, exercism.io, google.com, etc.)
Choose Easy Tools
Find a mentor (friend, dev on your project, it-chats, forums, etc…)
Go :)
![Page 80: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/80.jpg)
Choose language?Have project?
=> choose language of project’s developers
Have no project but want to find work fast?
=> choose one of the most popular language
Have no project but want to code in your style, and it does not matter how long will you seek for the job?
=> choose language that fits you
![Page 81: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/81.jpg)
No ready easy tool for your language?
Lack of knowledge?
=> ask project’s developers to write it for you
Brave?
=> implement it by your own
![Page 82: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/82.jpg)
AfterwordsThere are good practices in context,
but there are no best practices. (c) Cem Kaner, James Bach
![Page 83: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/83.jpg)
Q&A
![Page 84: You do not need automation engineer - Sqa Days - 2015 - EN](https://reader031.fdocuments.us/reader031/viewer/2022030317/586fd51a1a28ab18428b4a73/html5/thumbnails/84.jpg)
github.com/yashaka
youtube.com/c/ItlabsNetUa
gitter.im/yashaka/start-selenium
slideshare.net/yashaka
[email protected] @yashaka