Week 8 - Selenium Flashcards

(12 cards)

1
Q

What is web testing

A

– evaluating a web app based on its functionality , useability , compatibility performance and security so it works properly for end users

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

read

A

useability – how intuitive and user friendly web app is
- is navigation easy? Can user complete tasks quickly

Compatibility – ensures app works consistently across browsers , devices , operating systems

Performance - Tests app’s speed and responsiveness under various loads

Security – Identifies vulnerabilities to protect against attacks , data breaches …

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

challenges in web testing

A

browser and device compatability

Internet connection variability – web testing needs to consider different latency speeds , offline mode … ( not trivial)

dynamic and responsive interfaces – content changes based on user choices ( not trivial to test)

user interaction patterns – web apps involve multiple user sessions , login states and permissions ( now we need to test for session management , cookies , caching and handling of multi user interactions effectively)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

difference between automated and manual web testing

A

Automated web testing executes test cases quickly and repeatedly using scripts, whereas manual web testing is slower because each test requires human intervention.

Automated testing allows test scripts to be reused across multiple test runs, whereas manual testing requires tests to be re-executed by hand every time.

Automated testing produces consistent results and reduces human error, whereas manual testing is more prone to mistakes and oversight.

Automated testing has a higher initial setup cost due to tool configuration and script creation, whereas manual testing has a lower initial cost as it only requires human testers.

Automated testing is best suited for regression, load, and performance testing, whereas manual testing is better for exploratory, usability, and ad-hoc testing.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is crowd testing

A

crowdtesting - leverages large number of testers from different background and who use different devices to evaluate an application in real- world conditions

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

advantages of crowd testing

A

advantages: scalability and flexibility - very good for testing across different devices / platforms simultaneously
real world conditions- cannot think of all edge cases, helps identify issues that arise under certain conditions ie low internet connection , device model …
quick feedback

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

what is selinium

A

open source frame work that:

  • automates web browser actions for testing
  • allows writing of scrips to simulate user interactions with app ( like clicking button , entering text …)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is synchronisation

A

synchronisation - ensuring test code and web app in synch
-without synch test code might try to interact with element before fully loaded
leading to errors

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

3 types of synchronisation

A

implicit , explicit and fluent wait

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

what is an implicit wait

A

implicit wait – web driver patiently searches dom for a specified period when attempting to locate element(s) if not readily accessible

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

what is an explicit wait

A

similarly pauses test execution for a time period but difference is it continually checks whether a particular condition is satisfied
(ie -> if we pause for 10 second but find out the element is available after 2 ( this is the condition) we don’t waste 8 seconds waiting for no reason)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

what is a fluent wait

A

fluent wait:
a type of explicit wait that allows you to control:
-polling frequency ( how often condition checked)
- which exceptions to ignore while waiting

How well did you know this?
1
Not at all
2
3
4
5
Perfectly