SE401 · Advanced Topics · Annotated SlidesAdvanced Topics: Web and Mobile Testing
Original
Overview

Advanced Topics: Web and Mobile Testing

Websites vs. web applications, web testing (functionality: links, forms, cookies, HTML/CSS, databases; usability, interface, compatibility, security, performance), automation with Selenium, and mobile testing: native, web and hybrid apps, and the challenges and types of mobile testing.

How to read this page

Every original slide is shown unchanged. Yellow marks on a slide point to a numbered note: hover or tap a mark to jump to its note, and hover a note to see its marks. Questions tagged Past exam appeared on a real paper; Prediction questions are likely angles, not confirmed. Pick an answer to each question: a wrong pick tells you why it is wrong, so you can try again.

All 75 slides
  1. 1 Slide 1
  2. 2 • Web Testing • Mobile Testing
  3. 3 Slide 3
  4. 4 • Web-site vs. Web Application
  5. 5 • A website is a collection of related web pages, including multimedia
  6. 6 • A web application: is a client–server computer program which the client
  7. 7 So ..
  8. 8 • Web testing is a software testing
  9. 9 • It is performed
  10. 10 • Web based systems and applications interoperate with many different:
  11. 11 • Some or all the following testing types may be performed depending on the web testing requirements:
  12. 12 features and operational behavior of a web
  13. 13 • 1.1 Check all the links:
  14. 14 • 1.2 Test forms on all pages: Forms are part of any website that is used for
  15. 15 • 1.3 Test Cookies: cookies are small files that are stored on a user's computer. They hold data specific
  16. 16 • 1.4 Test HTML and CSS:
  17. 17 • 1.5 Database Testing: validity testing: test if any errors are shown while executing queries
  18. 18 • Examples of Functionality Test Scenarios:
  19. 19 • Usability testing is the process by which the human-computer interaction characteristics of a system are measured, and weaknesses
  20. 20 • 2.1 Navigation:
  21. 21 • 2.2 Content:
  22. 22 • Examples of Usability Test Scenarios:
  23. 23 layers in a web application are:
  24. 24 • Compatibility testing is used to determine if your software is compatible with other elements of a system with which it should
  25. 25 • Examples of Compatibility Test Scenarios:
  26. 26 • Security Testing is vital for web applications that store sensitive customer information like credit cards, ids, passwords, etc.
  27. 27 • Examples of Security Test Scenarios:
  28. 28 • This will ensure your site works under all loads. Testing activities will include but not limited to:
  29. 29 • Examples of Performance Test Scenarios:
  30. 30 • Automation testing helps to relieve the bulk of tedious and repetitive human tasks.
  31. 31 • Faster feedback • Improved test efficiency
  32. 32 Selenium is open source testing tool for web applications. Any web application can be testing on web browsers with this automation testing tool.
  33. 33 • Eclipse IDE (Users can use other IDEs too) • Selenium Client and language WebDiver bindings
  34. 34 • Web-site vs. Web Application
  35. 35 Slide 35
  36. 36 • What is a Mobile Application?
  37. 37 mobile application is a software application developed
  38. 38 Main Mobile Phone Platforms
  39. 39 • Types of Mobile Applications:
  40. 40 • Native Apps:
  41. 41 • Mobile Web Apps:
  42. 42 • Hybrid Apps:
  43. 43 • Mobile Testing:
  44. 44 • Mobile application testing is a process by which application software developed
  45. 45 Forecast number of mobile users worldwide from 2020 to 2025
  46. 46 Why Testing Mobile Apps is Important
  47. 47 • Issues that make testing mobile applications more challenging:
  48. 48 Considerations
  49. 49 Major Types of Mobile Apps testing
  50. 50 • Consists of
  51. 51 • Mandatory fields are working as required • Mandatory fields are displayed distinctively from the non-mandatory
  52. 52 • The application allows necessary social network options such as sharing, posting and navigation etc.
  53. 53 • Allows other applications to perform satisfactorily, and it does not eat into the memory of the other applications
  54. 54 • Fundamental objective is to ensure that the application performs acceptably under certain performance requirements such as access by
  55. 55 • Performs as per the requirement under different load conditions • The current network coverage is able to support the application at
  56. 56 • Evaluate product and/or hardware to determine if it can handle projected load volumes
  57. 57 • Validate the application longevity whenever the user load is rigorous • Validate the network performance while moving around with the device
  58. 58 • The fundamental objective of security testing is to ensure that the application’s data and networking security requirements are met as per
  59. 59 • Able to withstand any brute force attack which is an automated process of trial and error used to guess a person’s username, password or
  60. 60 • Prevent from SQL injection related attacks • Identify and recover from any unmanaged code scenarios
  61. 61 • Check if any cryptography code is broken and ensure that it is repaired • Validate whether the business logic implementation is secured and not
  62. 62 • Investigate file caching and prevent any malicious possibilities from the same
  63. 63 • The usability testing process of the Mobile application is performed to have a quick and easy step application with less functionality than a
  64. 64 • Buttons should have the required size and be suitable to big fingers • Buttons are placed in the same section of the screen to avoid
  65. 65 • Application provides a method for going back or undoing an action, on touching the wrong item, within an acceptable duration
  66. 66 • Closing of the application is performed from different states and verify if it re-opens in the same state
  67. 67 • Compatibility testing on mobile devices is performed to ensure that since mobile devices have different size, resolution, screen, version
  68. 68 • User Interface of the application is as per the screen size of the device, no text/control is partially invisible or inaccessible
  69. 69 • Crash recovery and transaction interruptions • Validation of the effective application recovery situation post
  70. 70 • Installation testing
  71. 71 • Continued keypad entry during interrupts and other times like network issues
  72. 72 • Both manual and automated testing are widespread and can provide good results.
  73. 73 Manual vs Automated Mobile App Testing
  74. 74 • There are universal testing tools suitable for Android and iOS solutions. • Some examples are:
  75. 75 • What is a Mobile Application?
Slide 1 / 75

Slide 1

Slide 1: Slide 1
Slide 2 / 75

• Web Testing • Mobile Testing

Slide 2: • Web Testing • Mobile Testing
Slide 3 / 75

Slide 3

Slide 3: Slide 3
Slide 4 / 75

• Web-site vs. Web Application

Slide 4: • Web-site vs. Web Application

Notes

  1. Website: mostly static informational pages. Web application: interactive client–server program run in a browser.

Slide 5 / 75

• A website is a collection of related web pages, including multimedia

Slide 5: • A website is a collection of related web pages, including multimedia
Slide 6 / 75

• A web application: is a client–server computer program which the client

Slide 6: • A web application: is a client–server computer program which the client
Slide 7 / 75

So ..

Slide 7: So ..
Slide 8 / 75

• Web testing is a software testing

Slide 8: • Web testing is a software testing
Slide 9 / 75

• It is performed

Slide 9: • It is performed
Slide 10 / 75

• Web based systems and applications interoperate with many different:

Slide 10: • Web based systems and applications interoperate with many different:
Slide 11 / 75

• Some or all the following testing types may be performed depending on the web testing requirements:

Slide 11: • Some or all the following testing types may be performed depending on the web testing requirements:
Slide 12 / 75

features and operational behavior of a web

Slide 12: features and operational behavior of a web
Slide 13 / 75

• 1.1 Check all the links:

Slide 13: • 1.1 Check all the links:

Notes

  1. Functionality: check all links (broken, internal, external, mailto), forms, cookies, HTML/CSS validity, database integrity.

Slide 14 / 75

• 1.2 Test forms on all pages: Forms are part of any website that is used for

Slide 14: • 1.2 Test forms on all pages: Forms are part of any website that is used for
Slide 15 / 75

• 1.3 Test Cookies: cookies are small files that are stored on a user's computer. They hold data specific

Slide 15: • 1.3 Test Cookies: cookies are small files that are stored on a user's computer. They hold data specific
Slide 16 / 75

• 1.4 Test HTML and CSS:

Slide 16: • 1.4 Test HTML and CSS:
Slide 17 / 75

• 1.5 Database Testing: validity testing: test if any errors are shown while executing queries

Slide 17: • 1.5 Database Testing: validity testing: test if any errors are shown while executing queries
Slide 18 / 75

• Examples of Functionality Test Scenarios:

Slide 18: • Examples of Functionality Test Scenarios:
Slide 19 / 75

• Usability testing is the process by which the human-computer interaction characteristics of a system are measured, and weaknesses

Slide 19: • Usability testing is the process by which the human-computer interaction characteristics of a system are measured, and weaknesses
Slide 20 / 75

• 2.1 Navigation:

Slide 20: • 2.1 Navigation:
Slide 21 / 75

• 2.2 Content:

Slide 21: • 2.2 Content:
Slide 22 / 75

• Examples of Usability Test Scenarios:

Slide 22: • Examples of Usability Test Scenarios:
Slide 23 / 75

layers in a web application are:

Slide 23: layers in a web application are:
Slide 24 / 75

• Compatibility testing is used to determine if your software is compatible with other elements of a system with which it should

Slide 24: • Compatibility testing is used to determine if your software is compatible with other elements of a system with which it should

Notes

  1. Compatibility: browsers, operating systems, devices, screen sizes.

Slide 25 / 75

• Examples of Compatibility Test Scenarios:

Slide 25: • Examples of Compatibility Test Scenarios:
Slide 26 / 75

• Security Testing is vital for web applications that store sensitive customer information like credit cards, ids, passwords, etc.

Slide 26: • Security Testing is vital for web applications that store sensitive customer information like credit cards, ids, passwords, etc.

Notes

  1. Security: unauthorized access, session expiry, SQL injection, XSS, HTTPS.

Slide 27 / 75

• Examples of Security Test Scenarios:

Slide 27: • Examples of Security Test Scenarios:
Slide 28 / 75

• This will ensure your site works under all loads. Testing activities will include but not limited to:

Slide 28: • This will ensure your site works under all loads. Testing activities will include but not limited to:
Slide 29 / 75

• Examples of Performance Test Scenarios:

Slide 29: • Examples of Performance Test Scenarios:
Slide 30 / 75

• Automation testing helps to relieve the bulk of tedious and repetitive human tasks.

Slide 30: • Automation testing helps to relieve the bulk of tedious and repetitive human tasks.
Slide 31 / 75

• Faster feedback • Improved test efficiency

Slide 31: • Faster feedback • Improved test efficiency
Slide 32 / 75

Selenium is open source testing tool for web applications. Any web application can be testing on web browsers with this automation testing tool.

Slide 32: Selenium is open source testing tool for web applications. Any web application can be testing on web browsers with this automation testing tool.

Exam angle

PredictionQ1

Which tool automates web browser testing?

Slide 33 / 75

• Eclipse IDE (Users can use other IDEs too) • Selenium Client and language WebDiver bindings

Slide 33: • Eclipse IDE (Users can use other IDEs too) • Selenium Client and language WebDiver bindings
Slide 34 / 75

• Web-site vs. Web Application

Slide 34: • Web-site vs. Web Application
Slide 35 / 75

Slide 35

Slide 35: Slide 35
Slide 36 / 75

• What is a Mobile Application?

Slide 36: • What is a Mobile Application?
Slide 37 / 75

mobile application is a software application developed

Slide 37: mobile application is a software application developed
Slide 38 / 75

Main Mobile Phone Platforms

Slide 38: Main Mobile Phone Platforms
Slide 39 / 75

• Types of Mobile Applications:

Slide 39: • Types of Mobile Applications:

Notes

  1. Native apps (built for one platform), mobile web apps (run in the browser), hybrid apps (web code inside a native wrapper).

Exam angle

PredictionQ1

An app built with web technologies inside a native container is:

Slide 40 / 75

• Native Apps:

Slide 40: • Native Apps:
Slide 41 / 75

• Mobile Web Apps:

Slide 41: • Mobile Web Apps:
Slide 42 / 75

• Hybrid Apps:

Slide 42: • Hybrid Apps:
Slide 43 / 75

• Mobile Testing:

Slide 43: • Mobile Testing:
Slide 44 / 75

• Mobile application testing is a process by which application software developed

Slide 44: • Mobile application testing is a process by which application software developed
Slide 45 / 75

Forecast number of mobile users worldwide from 2020 to 2025

Slide 45: Forecast number of mobile users worldwide from 2020 to 2025
Slide 46 / 75

Why Testing Mobile Apps is Important

Slide 46: Why Testing Mobile Apps is Important
Slide 47 / 75

• Issues that make testing mobile applications more challenging:

Slide 47: • Issues that make testing mobile applications more challenging:

Notes

  1. Mobile challenges: many devices and OS versions, screen sizes, networks, battery, interruptions (calls, notifications).

Slide 48 / 75

Considerations

Slide 48: Considerations
Slide 49 / 75

Major Types of Mobile Apps testing

Slide 49: Major Types of Mobile Apps testing
Slide 50 / 75

• Consists of

Slide 50: • Consists of
Slide 51 / 75

• Mandatory fields are working as required • Mandatory fields are displayed distinctively from the non-mandatory

Slide 51: • Mandatory fields are working as required • Mandatory fields are displayed distinctively from the non-mandatory
Slide 52 / 75

• The application allows necessary social network options such as sharing, posting and navigation etc.

Slide 52: • The application allows necessary social network options such as sharing, posting and navigation etc.
Slide 53 / 75

• Allows other applications to perform satisfactorily, and it does not eat into the memory of the other applications

Slide 53: • Allows other applications to perform satisfactorily, and it does not eat into the memory of the other applications
Slide 54 / 75

• Fundamental objective is to ensure that the application performs acceptably under certain performance requirements such as access by

Slide 54: • Fundamental objective is to ensure that the application performs acceptably under certain performance requirements such as access by
Slide 55 / 75

• Performs as per the requirement under different load conditions • The current network coverage is able to support the application at

Slide 55: • Performs as per the requirement under different load conditions • The current network coverage is able to support the application at
Slide 56 / 75

• Evaluate product and/or hardware to determine if it can handle projected load volumes

Slide 56: • Evaluate product and/or hardware to determine if it can handle projected load volumes
Slide 57 / 75

• Validate the application longevity whenever the user load is rigorous • Validate the network performance while moving around with the device

Slide 57: • Validate the application longevity whenever the user load is rigorous • Validate the network performance while moving around with the device
Slide 58 / 75

• The fundamental objective of security testing is to ensure that the application’s data and networking security requirements are met as per

Slide 58: • The fundamental objective of security testing is to ensure that the application’s data and networking security requirements are met as per
Slide 59 / 75

• Able to withstand any brute force attack which is an automated process of trial and error used to guess a person’s username, password or

Slide 59: • Able to withstand any brute force attack which is an automated process of trial and error used to guess a person’s username, password or
Slide 60 / 75

• Prevent from SQL injection related attacks • Identify and recover from any unmanaged code scenarios

Slide 60: • Prevent from SQL injection related attacks • Identify and recover from any unmanaged code scenarios
Slide 61 / 75

• Check if any cryptography code is broken and ensure that it is repaired • Validate whether the business logic implementation is secured and not

Slide 61: • Check if any cryptography code is broken and ensure that it is repaired • Validate whether the business logic implementation is secured and not
Slide 62 / 75

• Investigate file caching and prevent any malicious possibilities from the same

Slide 62: • Investigate file caching and prevent any malicious possibilities from the same
Slide 63 / 75

• The usability testing process of the Mobile application is performed to have a quick and easy step application with less functionality than a

Slide 63: • The usability testing process of the Mobile application is performed to have a quick and easy step application with less functionality than a
Slide 64 / 75

• Buttons should have the required size and be suitable to big fingers • Buttons are placed in the same section of the screen to avoid

Slide 64: • Buttons should have the required size and be suitable to big fingers • Buttons are placed in the same section of the screen to avoid
Slide 65 / 75

• Application provides a method for going back or undoing an action, on touching the wrong item, within an acceptable duration

Slide 65: • Application provides a method for going back or undoing an action, on touching the wrong item, within an acceptable duration
Slide 66 / 75

• Closing of the application is performed from different states and verify if it re-opens in the same state

Slide 66: • Closing of the application is performed from different states and verify if it re-opens in the same state
Slide 67 / 75

• Compatibility testing on mobile devices is performed to ensure that since mobile devices have different size, resolution, screen, version

Slide 67: • Compatibility testing on mobile devices is performed to ensure that since mobile devices have different size, resolution, screen, version
Slide 68 / 75

• User Interface of the application is as per the screen size of the device, no text/control is partially invisible or inaccessible

Slide 68: • User Interface of the application is as per the screen size of the device, no text/control is partially invisible or inaccessible
Slide 69 / 75

• Crash recovery and transaction interruptions • Validation of the effective application recovery situation post

Slide 69: • Crash recovery and transaction interruptions • Validation of the effective application recovery situation post
Slide 70 / 75

• Installation testing

Slide 70: • Installation testing

Notes

  1. Also test installation, interruptions, crash recovery and battery/network conditions.

Slide 71 / 75

• Continued keypad entry during interrupts and other times like network issues

Slide 71: • Continued keypad entry during interrupts and other times like network issues
Slide 72 / 75

• Both manual and automated testing are widespread and can provide good results.

Slide 72: • Both manual and automated testing are widespread and can provide good results.
Slide 73 / 75

Manual vs Automated Mobile App Testing

Slide 73: Manual vs Automated Mobile App Testing
Slide 74 / 75

• There are universal testing tools suitable for Android and iOS solutions. • Some examples are:

Slide 74: • There are universal testing tools suitable for Android and iOS solutions. • Some examples are:
Slide 75 / 75

• What is a Mobile Application?

Slide 75: • What is a Mobile Application?