14
Testing Web Applications For fat clients, mobile devices and Smart9TVs [email protected] Rev: 15 Nov 2013 Creative Commons License How to design your mobile apps by Julian Harty is licensed under a Creative Commons AttributionBShareAlike 3.0 Unported License. http://creativecommons.org/licenses/byBsa/3.0/deed.en_US

Julian Harty - Testing web applications

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Julian Harty - Testing web applications

Testing(Web(Applications((For(fat(clients,(mobile(devices(and(Smart9TVs(

[email protected](

Rev:%15%Nov%2013%

Creative%Commons%License%How%to%design%your%mobile%apps%by%Julian%Harty%is%licensed%under%a%Creative%Commons%AttributionBShareAlike%3.0%Unported%License.%

http://creativecommons.org/licenses/byBsa/3.0/deed.en_US%%

Page 2: Julian Harty - Testing web applications

Testing?(

!   Evaluating(something(

!   Based(on(criteria(

!   With(an(idea(of(what(might(happen(

!   Using(evidence(

!   An(imperfect(art(and(an(imperfect(science(

Page 3: Julian Harty - Testing web applications

Automated(testing(Replace(People?(

!   Using(computers(

!   Who(may(be(testing(

!   Rich(observation(

With(Machines?(

!   Navigating(the(user(interface(

!   Checking(what(the(code(knows(about(

Page 4: Julian Harty - Testing web applications

Automated(web(testing(

IDE:(Record(and(playback(using(Firefox(Web(Browser(

Grid:(Run(software(tests(in(parallel(

WebDriver:(Write(software(to(test(other(software(

http://docs.seleniumhq.org%

Page 5: Julian Harty - Testing web applications

How(Selenium(WebDriver(works(

API%API%

Page 6: Julian Harty - Testing web applications

Many(Web(Browsers(

Page 7: Julian Harty - Testing web applications

Challenges:(mobile(websites(

http://soiduplaan.tallinn.ee/#plan/10902B1,10904B1/02801B1,02802B1/map,,,1/en%

!   What(happens(when(you(visit(the(URL(on(a(laptop(

Page 8: Julian Harty - Testing web applications

Equivalence(&(consistency((for(mobile(web(users(

What(happens(when(you(visit(the(same(URL(on(a(Windows(Phone(8(

http://soiduplaan.tallinn.ee/#plan/10902B1,10904B1/02801B1,02802B1/map,,,1/en%

What%would%a%mobile%web%user%like%the%web%site%to%do?%

•  Test%for%equivalent%results%between%Desktop%&%Mobile%Web%Site%editions%

•  And%seek%to%provide%an%enhanced%service%for%mobile%web%users%e.g.%

•  Take%advantage%of%location%data%if%available%

Page 9: Julian Harty - Testing web applications

Behaviour(

Software%under%test%

Input%&%Control%

Output%&%Behaviour%

Software%under%test%

Input%&%Control%

Output%&%Behaviour%

Additional%Outputs%&%Behaviours%

state%

Classic Model Refined Model

Page 10: Julian Harty - Testing web applications

testingmachine.eu(workshops(Fresh(insights(into(using(

!   Test(Automation(

!  Analytics(

!  Webserver(Logs(

Improve(the(skills(of(software(developers(

Page 11: Julian Harty - Testing web applications

testingmachine.eu(workshops(Reduce(the(‘friction’(of(testing(e9government(services(using(automated(testing(

!   Better(design(of(functional(tests(

!   Using(heuristics(to(find(problems(

!   Use(Analytics(and(Web(Logs(to(augment(testing(

!   Make(automated(tests(easy(to(commission(&(run(

!   Demonstrate(working(software(in(public(

(

https://travisBci.org/julianharty/androidBwebdriverBvmBdemo%

https://github.com/julianharty/androidBwebdriverBvmBdemo%%

Page 12: Julian Harty - Testing web applications

Rethinking(e9government(services(

What(if((

!   users(could(‘do’,(‘undo’(&(‘redo’(each(task?(

!   the(services(are(in(‘safe9mode’(by(default?(

!   all(authorized(users(can(see(the(state(of(their(interactions?(

We(might(get(happier(users(and(much(easier(testing(

(

Page 13: Julian Harty - Testing web applications

Testing(machine(for(you(!   Simplify(your(testing(

!   Increase(your(confidence(in(your(online(services((

Click%here%

Page 14: Julian Harty - Testing web applications

Thank(you([email protected]((twitter.com/julianharty(