141104 usersnap angular js_jt

17
BUG REPORTING TIME MACHINE FOR ANGULARJS Vienna AngularJS | 2014-11-04 | Josef Trauner – [email protected]

Upload: usersnap

Post on 13-Jul-2015

61 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: 141104 usersnap angular js_jt

BUG REPORTING TIME MACHINE FOR ANGULARJS

Vienna AngularJS | 2014-11-04 | Josef Trauner – [email protected]

Page 2: 141104 usersnap angular js_jt

What is Usersnap?Automatically attach a Screenshot to every bug report?

Page 3: 141104 usersnap angular js_jt

The solution

Directly In-App/In-Site Bug reporting where the bug occurs.

Page 4: 141104 usersnap angular js_jt

USERSNAP DASHBOARD

WRITTEN IN ANGULARJS

Page 5: 141104 usersnap angular js_jt

Usersnap Dashboard

• Why Angular?• old Codebase:

– Combination of jQuery– jQuery plugins– Grown code structure– „no“ Architecture– methods were simply added

Page 6: 141104 usersnap angular js_jt

Usersnap Dashboard

• UI was ugly:

Page 7: 141104 usersnap angular js_jt

Usersnap Dashboard

• What we are using:– angular-ui/ui-router– ngbp/ngbp (ng-boilerplate)– UI/CSS: Boostrap (less)– Some jQuery Plugins (wrapped into directives)

Page 8: 141104 usersnap angular js_jt

BUT THERE IS STILL SOMETHING MISSING

USERSNAP CONSOLE RECORDER

Page 9: 141104 usersnap angular js_jt

Console Recorder

• aka. Time Machine• A screenshot is great + contains a lot of

information• Mostly happens in complex applications• What happens if:

– Ajax call failed– JavaScript errors happen– User experiences only a wrong UI

Page 10: 141104 usersnap angular js_jt

• Now you get super power• Record all console log/warn/error• XHR Requests

Page 11: 141104 usersnap angular js_jt

Same view as you have it in your browser

Page 12: 141104 usersnap angular js_jt

DEMO TIME

QUICK EXAMPLE HOW IT WORKS

Page 13: 141104 usersnap angular js_jt

Usersnap + Angular

• Example: Without Angular• Angular + Usersnap

– Out of the box: leads to wrong logging!– Use our AngularJS wrapper

• https://github.com/usersnap/public/

Page 14: 141104 usersnap angular js_jt

DEMO TIME 2

CONSOLE RECORDER + ANGULARJS

Page 15: 141104 usersnap angular js_jt

Summary/Limitations

• Benefits during development– Non Tech savy users can report bugs– Way easier to reproduce issues

• Limitations:– Usersnap will be loaded async

Page 16: 141104 usersnap angular js_jt

QUESTIONS

I TRY TO ANSWER EVERYTHING ;-)

Page 17: 141104 usersnap angular js_jt

JOSEF TRAUNER

@josef_trauner

CO – Founder / Product

[email protected]

Image credits: photopin.com