Permalink
Browse files

1.0

  • Loading branch information...
1 parent e630b74 commit af392b2aa4eb6db19fcbab70142c3fe9f00e3a88 @mahnve committed Dec 14, 2011
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@@ -10,8 +10,8 @@
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- width="1024px"
- height="768px"
+ width="540"
+ height="660"
id="svg2816"
version="1.1"
inkscape:version="0.48.2 r9819"
@@ -24,18 +24,22 @@
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:zoom="0.75940959"
- inkscape:cx="484.87855"
+ inkscape:cx="244.87855"
inkscape:cy="383.50514"
- inkscape:current-layer="g4597"
+ inkscape:current-layer="layer1"
inkscape:document-units="px"
showgrid="true"
- inkscape:window-width="1596"
- inkscape:window-height="1163"
- inkscape:window-x="1440"
- inkscape:window-y="17"
+ inkscape:window-width="1438"
+ inkscape:window-height="880"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
inkscape:window-maximized="0"
showguides="true"
- inkscape:guide-bbox="true">
+ inkscape:guide-bbox="true"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0">
<inkscape:grid
snapvisiblegridlinesonly="true"
enabled="true"
@@ -49,15 +53,16 @@
<marker
style="overflow:visible"
id="EmptyTriangleOutL"
- refX="0.0"
- refY="0.0"
+ refX="0"
+ refY="0"
orient="auto"
inkscape:stockid="EmptyTriangleOutL">
<path
- transform="scale(0.8) translate(-6,0)"
- style="fill-rule:evenodd;fill:#FFFFFF;stroke:#000000;stroke-width:1.0pt;marker-start:none"
- d="M 5.77,0.0 L -2.88,5.0 L -2.88,-5.0 L 5.77,0.0 z "
- id="path3956" />
+ transform="matrix(0.8,0,0,0.8,-4.8,0)"
+ style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
+ d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
+ id="path3956"
+ inkscape:connector-curvature="0" />
</marker>
<inkscape:perspective
id="perspective2824"
@@ -103,28 +108,18 @@
<g
inkscape:groupmode="layer"
inkscape:label="Layer 1"
- id="layer1">
+ id="layer1"
+ transform="translate(-240,-108)">
<rect
- style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ style="fill:#000000;fill-opacity:1;stroke:none"
id="rect2835"
- width="1040"
- height="780"
- x="0"
- y="-12"
- rx="3.1969113" />
- <text
- id="text2813"
- y="88"
- x="316.04688"
- style="font-size:40px;font-style:normal;font-weight:normal;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Mentone;-inkscape-font-specification:Mentone"
- xml:space="preserve"><tspan
- style="font-size:64px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#ffffff;fill-opacity:1;font-family:Nunito;-inkscape-font-specification:Nunito Bold"
- y="88"
- x="316.04688"
- id="tspan2815"
- sodipodi:role="line">The Problem</tspan></text>
+ width="540"
+ height="660"
+ x="240"
+ y="108"
+ rx="1.6599346" />
<flowRoot
- style="fill:black;stroke:none;stroke-opacity:1;stroke-width:1px;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:1;font-family:Mentone;font-style:normal;font-weight:normal;font-size:40px;-inkscape-font-specification:Mentone"
+ style="font-size:40px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Mentone;-inkscape-font-specification:Mentone"
id="flowRoot3642"
xml:space="preserve"><flowRegion
id="flowRegion3644"><rect
@@ -164,12 +159,13 @@
<path
style="fill:none;stroke:#ffffff;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 512,568 c 0,-80 0,-80 0,-80 l 20,0 -20,-40 -20,40 20,0 0,0"
- id="path4240" />
+ id="path4240"
+ inkscape:connector-curvature="0" />
</g>
<flowRoot
xml:space="preserve"
id="flowRoot4570"
- style="fill:black;stroke:none;stroke-opacity:1;stroke-width:1px;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:1;font-family:Signika;font-style:normal;font-weight:normal;font-size:40px;line-height:125%;letter-spacing:0px;word-spacing:0px;-inkscape-font-specification:Signika;font-stretch:normal;font-variant:normal"><flowRegion
+ style="font-size:40px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Signika;-inkscape-font-specification:Signika"><flowRegion
id="flowRegion4572"><rect
id="rect4574"
width="595.19922"
View
@@ -4,7 +4,8 @@ Automatic Testing of Mobile Applications
========================================
Marcus Ahnve
-Valtech AB
+Valtech AB
+
<marcus.ahnve@valtech.se>
[@mahnve](http://www.twitter.com/mahnve)
@@ -16,3 +17,5 @@ Valtech AB
# About me
* Playing Agile Coach
+* Developed software professionally since 1996
+* Rubyist
View
@@ -4,22 +4,58 @@
![tests](test_quadrant.svg)
+.notes We will stay on the left side today
+
+<!SLIDE center>
+
+# Basic BDD Flow
+
+![BDD Flow](bdd.svg)
+
+
+<!SLIDE center>
+
+# Writing Examples First
+
+![BDD Flow](basic_tdd_flow.svg)
+
+
+
<!SLIDE center>
# What We Are Used To
-![Web Test Eco System](web_ecosystem.svg)
+![Web Test Eco System](web_ecosystem.png)
-. High Maturity
+.notes High Maturity. Tools are part of process, not only technical
<!SLIDE bullets>
# What We Have In Mobile
* Basically where we where with Java web testing in 2001
-* Slow
+* Slow, runs in container
* Relies on unpublished API:s
+<!SLIDE center>
+
+# Testing on the phone/simulator
+
+![Testing in container](test_apps_in_phone.png)
+
+<!SLIDE center>
+
+# The Problem
+
+![fullscreen](inheritance_problem.png)
+
+<!SLIDE bullets>
+
+# The Result
+
+* Unit Tests That Aren't Really Unit Tests
+* No Real Black Box Tests
+
<!SLIDE bullets>
@@ -28,16 +64,17 @@
* OCUnit
* Cedar
* KIF
-* Runs in simulator
+.notes Runs in simulator
-<!SLIDE >
+<!SLIDE bullets>
# Android Tools
* Robotium - runs in Emulator
* Robolectric - runs in VM
+
<!SLIDE bullets>
# The Monkey
@@ -56,13 +93,24 @@ $ adb shell monkey [options] <event-count>
* Gave up on existing tools
* Broke out logic into separate classes
+ * JUnit4
+ * OCUnit
* No integration tests
-* Will look to RoboGuice
+
+<!SLIDE bullets>
+
+# Future
+
+* Dependency Injection?
+ * RoboGuice
+ * Objection
+
+.notes Cmpr Spring, explain difficulty
<!SLIDE bullets>
# Web Applications
* Runs in the browser
* Testable using standard webtools
-* Can be run throught Selenium on both iOS and Android
+* Can be run through Selenium on both iOS and Android
File renamed without changes.
File renamed without changes.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.

0 comments on commit af392b2

Please sign in to comment.