Mobile Development and Testing

  • 1,402 views
Uploaded on

Presentation at Denver Open Source User Group on how to develop and test a JQuery Mobile application for IOS and Android

Presentation at Denver Open Source User Group on how to develop and test a JQuery Mobile application for IOS and Android

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,402
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
9
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n

Transcript

  • 1. MOBILE DEVELOPMENT AND TESTING Scott Ryan September 2011
  • 2. AGENDAProject FocusProject OrganizationUnit Testing using JasmineIntegration and Functional Testing using PhantomGradle Build ProcessesPackaging and Delivery
  • 3. PROJECT FOCUSGenerate a random number between 1 and set numberAllow configuration of repeatsPresent useful in flight data to the userSupport multiple mobile and web platforms
  • 4. TOOLSETCSS JasmineHTML 5 PhantomJavascript JS Test DriverJQuery Mobile ZombiePhone gap GradleEclipse/Xcode/Web Storm
  • 5. PROJECT STRUCTURELeverage Common StructureSource versus testSupport mobile developmentLayer javascript (Service, Presentation, etc)Use frameworks such as Spine or Backbone, etc.
  • 6. DEVELOPMENTStart with Test DescriptionBuild out the testsBuild code to satisfy the testsReview presentation with user/owner
  • 7. TDD WITH JASMINEConstructorNumber GeneratorCheck and StoreLast NumberSelectionsReset
  • 8. JASMINEDescribe to group high level conceptsMultiple layers of DescribeUse It descriptions to clarify tests
  • 9. JASMINESuites and Specs help structure testsUse matchers to assert resultsCustom matchers can be developedRun from Spec HTMLRun from Phantom to support CI
  • 10. JASMINEBefore and After structuresRunners are run before/after every spec in a suiteSuite based run before/after a specSpecs can have one or more after structures
  • 11. JASMINE SPIESSupport mocking, faking and interceptingCan be used to mock out async behavourHave specific matchers wasCalled, wasCalledWith Spyon and .... (throw, return, call through)Properties count, parameters
  • 12. ASYNC JASMINERunsWaitsWaitsFor
  • 13. PHANTOM TESTINGOrganize to support project structureBuild tests to support integrated processesTests integration of javascript with each other and with thedisplay layerScreen capture to validate look and feelIntegrate with CI
  • 14. PHANTOMWebkit Headless Full Support browserCreate page with URLInject your behavior into the browserCan inject JS and CSS filesCapture screen shots from within browser
  • 15. JS TEST DRIVERSupports CIAllows for clustered executionVery scalable with parallel executionBuilt to test multiple browser behaviorIDE IntegrationQuick start up
  • 16. BUILD AND PACKAGEGradle build leveraging Ant tasks as wellMinify and Replace‘About’ page replacementWar or zip deliveryMobile packaging using phonegap
  • 17. SOURCE CODEGithubhttps://github.com/scryan7371/NumGen