ross boucher - quality control: testing and debugging your apps

Post on 08-May-2015

1.196 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Developers have long been able to use an array of debugging, profiling and other testing tools to ensure application quality and performance. More recently, web developers have started to rely on increasingly sophisticated tools to help test their web sites and applications. But particularly in the mobile space, when developing sophisticated applications with web technologies, testing presents significant challenges. Ross Boucher, one of the developers of Objective-J, the Cappuccino web application framework, the visual development tool Atlas, and 280 slides knows a thing or two about testing sophisticated applications developed using web technologies. In this session, he’ll share some of those secretes, and help you better test and debug your applications.

TRANSCRIPT

TESTING & DEBUGGING MOBILE WEB APPSWEB DIRECTIONS UNPLUGGEDSEATTLE, 2011

UNIFIED WORKFLOW

alert()

I suspect that most JavaScript developers out there are a lot like me... We want to be able to pause our scripts, look at the call stack, and step through them one line at a time, but it's easier to just use "alert debugging" than to fire up a big clunky debugger.

- JOE HEWITT, 2006

console.log()

•console.•log()•warn()•error()

•copy()

•inspect()

•$0, $1, $2, $3

ELEMENT INSPECTOR

RESOURCE INSPECTOR

NETWORK INSPECTOR

JAVASCRIPT DEBUGGER

PAGETIMELINE

JAVASCRIPT PROFILER

aFunction

F1

F2

F01

9

1

8

78 7

1

1

aFunction

F1

F2

F01

9

1

8

78 7

1

1

1788

88

1

78 1

8

8

F1

F2

F0

aFunction

aFunction

1788

88

1

78 1

8

8

F1

aFunction

MEMORY PROFILER

PAGE AUDITS

STILL NOT A MOBILE DEVICE

USER AGENT FAKING

WINDOW RESIZING

TOUCH EVENT FAKING

TRANSFORM ON DEVICE

TRANSFORM ON DESKTOP

MULTI-TOUCH FAKING

STILL NOT A MOBILE DEVICE

MOBILE SIMULATORS

DASHCODE

STILL NOT A MOBILE DEVICE

OK, LET'S TRY ON A REAL

DEVICE

console.log()

WEINRE

http://github.com/senchalabs/android-tools

CHARLES PROXY

AUTOMATED TESTING

CONTINUOUS INTEGRATION

TIERED APPROACH

1) LOGIC ONLY

2) SELENIUM (etc) + DESKTOP BROWSERS

3) SELENIUM (etc) + MOBILE SIMULATORS

4) SELENIUM (etc) + MOBILE DEVICES

ALL OF THE OTHER THINGS

Thanks.

@boucher • rboucher@gmail.com

top related