The Difference Between UX and UI Design:
UI design:
UI design (or user interface design) focuses on the visual, interactive elements of the product. It designs all the screens and components that the user interacts with. It’s about creating digital products that are both aesthetically pleasing and flawlessly functional.
UX Design:
UX design (or user experience design) focuses on how intuitive, easy, and enjoyable it is to use a product (like a website or an app). It involves conducting research to understand user needs, and mapping out a logical structure and flow for the product.
Software Testing Concepts
Monday, April 14, 2025
Thursday, April 10, 2025
Playwright
vs Selenium > Key Differences in Playwright vs Selenium:
Selenium and Playwright are both powerful web automation tools, but they
differ in architecture, speed, browser support, and community adoption. While
Selenium has been the industry standard for years, Playwright offers modern
features and faster execution.
What Is
Selenium?
Selenium was
created in 2004 by Jason Huggins at ThoughtWorks as a JavaScript-based tool for
testing web applications, initially named Selenium Core. Over time, the project
expanded into Selenium Remote Control (RC) and other components. In 2008, Simon
Stewart introduced Selenium WebDriver, a modern and robust browser
automation framework that revolutionized the project by directly communicating
with browsers through their native automation APIs. Today, Selenium is an
open-source project maintained by a global community and is widely regarded as
the standard for browser automation.
Selenium has
become a comprehensive ecosystem for testing web applications across browsers
and platforms.
Key
Components of Selenium
- Selenium WebDriver: The core of Selenium,
WebDriver provides a programming interface to control browser behavior. It
allows you to simulate user interactions with web elements, navigate
pages, and perform actions just as a real user would.
- Selenium IDE (Integrated Development
Environment): A browser extension that enables testers to record, edit,
and playback test scripts. It's particularly useful for creating quick
tests or for those new to test automation. The Selenium IDE as a browser
extension is soon being replaced by an Electron application that will
provide more capabilities for all users.
- Selenium Grid: This component allows you to run
your tests in parallel across different machines and browser
configurations, significantly reducing the time required for large test
suites.
Selenium's
Strengths
- Wide Browser Compatibility: Selenium supports a broad range
of browsers, including older versions, which is crucial for applications
that cater to diverse user bases.
- Language Flexibility: Selenium integrates well with
various technology stacks, with bindings for Java, Python, C#, Ruby, and JavaScript, among others.
- Extensive Community and Resources: Thanks to its long-standing
presence, Selenium boasts a vast community, comprehensive documentation,
and a wealth of third-party tools and extensions.
Selenium's
robustness and flexibility have become a staple in many organizations' testing
strategies. However, as we'll see, the newer Playwright framework offers its
own compelling features.
What Is
Playwright?
Playwright is
a modern, open-source framework for end-to-end testing of web applications.
Developed by Microsoft and first released in 2020, Playwright is based on
Puppeteer concepts (such as using CDP as a protocol) and expands its
capabilities to support multiple browsers. Puppeteer is a browser automation
tool for Chromium browsers and runs the browser headless by default but can
also run the browser conventionally. Puppeteer is based on CDP (Chrome Devtools
Protocol), Playwright’s foundation.
Key Features
of Playwright
- Multi-Browser Support: Playwright can automate
Chromium, Firefox (a modified open source version, not the typical
end-user one), and WebKit (another modified open source version) with a
single API, covering all major rendering engines.
- Multiple Language Bindings: While primarily based on
Node.js, Playwright offers bindings for TypeScript, JavaScript, Python,
.NET, and Java.
- Powerful Tooling: Playwright has a built-in tool
suite:
- Codegen: Generates test scripts by
recording user actions.
- Playwright Inspector: Allows for real-time debugging
and element inspection.
- Trace Viewer: Provides comprehensive test
failure analysis with screencasts, DOM snapshots, and action logs.
Playwright's
Strengths
- Modern Web App Testing: Playwright excels at handling
complex, dynamic web applications with features like auto-waiting and
network interception.
- Speed and Efficiency: Its use of WebSocket
communication and a single browser instance for multiple contexts results
in faster test execution.
- Cross-Browser Testing: Playwright simplifies
cross-browser testing workflows with built-in support for Chromium and any
the Playwright team modifies.
Playwright's
modern approach and powerful features have quickly made it a favorite among
developers looking for efficient and reliable test automation solutions.
Selenium
vs Playwright: A Head-to-Head Comparison:
Comparing a
browser automation tool like Selenium to a testing framework like Playwright
would be deceptive. While Playwright aims to solve the challenge of web
application testing, Selenium aims to solve the challenge of browser automation
across different browser engines in a standardized way.
Let's break
down these differences to help you determine which framework might be the best
fit for your project.
Thursday, July 2, 2015
Database Testing
- Set Fixture
- Test
run
- Outcome
verification
- Tear
down
http://www.agiledata.org/essays/databaseTesting.html
Wednesday, November 19, 2014
Selenium Builder
Selenium Builder(Se Builder) is licensed under the Apache 2 License, Se Builder supports creating scripts in
both Selenium 1 and Selenium 2. It is alternative to S-IDE (Selenium IDE) and its architecture is based on HTML/JS/jQuery.
Selenium Builder is a Firefox add-on, used for record-playback and exporting the recorded scripts in your desired language(ex: Java-TestNG).
Selenium Builder is much more useful for the automation beginners to learn the basics and to have a hands on practice.
Below operations can be performed by Se Builder:
Record
Edit
Playback
Load, Save & export.
1. Adding Selenium Builder Extension
2. Record and Playback
3. Executing Steps
4. Breakpoints
5. Modifying the step
6. Verification
7. Save and Open Script
8. Export script
Selenium Builder - Modifying Steps
Modifying the search text:



Updating the page url.
.png)
.png)
Selenium Builder - Verification
Adding Verification steps.
Selenium Builder - Breakpoint
Adding Breakpoint to the steps.
.png)
.png)
Removing Breakpoint
.png)

Clear All Breakpoints




SeleniumBuilder - Executing Steps
Executing specific step
.png)

Executing from specific steps to the last step.
Executing from first step to specific step.
Selenium Builder - Record & Playback
Thursday, September 11, 2014
Selenium Webdriver Latest jars released 2.43
New Release came for Selenium Webdriver-2.43 yesterday (9-9-2014).
Selenium is going to give another release 2.43.1 in couple of day with some new feature.
These are some new changes in 2.43.0 lets have a look
Note- Please update the yous :
v2.43.0
======
WebDriver:
* Updating Native events to support Firefox 24, 31 and 32
* Add note on stale element checks and a WebElement represents a DOM element
* Upgrade third party dependency JavaScript-XPath to 0.1.12
* Fix example code: "using(-Chrome)DriverExecutable"
* Make event_firing_test.html pass in Firefox 24 ESR.
* Fix an error propagation bug when a command fails from bad inputs.
* Handle the case where a proxied element from PageFactory causes a FluentWait to timeout.
* Integrating the Microsoft Internet Explorer driver implementation
* Allow subclasses of HttpCommandExecutor to extend it at runtime.
* Handle the case where executeScript returns an HTMLDocument.
* IEDriver crashes in WaitUntilElementFocused() because of null pointer. Fixes issue #7577
* Deprecate the original RC interface in Selenium.
As part of Selenium 3.0, we shall be moving the original RC interface to a
legacy JAR that will be available as a separate download. As the first step
in this process, the original "Selenium" interface is being marked as
deprecated.
* Run FirefoxDriver tests with Buck.
* Bump timeout for tests since a suite is also a test.
* Run htmlunit-driver tests with Buck.
* Run the ignored tests printer with Buck.
* Get org.openqa.selenium.SmallTests building with Buck.
* Working around limitations in subpixel precision event handling.
The bug/limitation where browser supports subpixel precision for elements but not for dispatched events was found in both modern Chrome (http://crbug.com/396380) and Firefox (?) browsers.
(IE doesn't seem to be affected: before and including IE9 - no subpixel for elements and events; from ie10 - subpixel is supported for both elements and events).
This test was lucky so far (mostly?) and didn't hit this issue, until Chrome 37 that enabled subpixel text scaling by default.
This change makes *sure* elements have subpixel coordinates (if only browser supports'em) and then it makes sure this test doesn't fail because of that (while still testing selenium atoms).
While there, I moved asserts from event handlers into the normal test flow so jsunit can properly attribute assertion failures to specific test methods.
* Updating prebuilt libs for windows
* Re-add the rubyzip jar
* updating prebuilts for linux
* Updating to gecko 32
* Log formatter should be able to work with empty keys array. Fixes issue 7357
* Fixing infinite read from socket. Fixes issue 7814
* WDBS: safe check for window.localStorage
* Driver should operate cookies for the current frame, not the topmost one. Fixes issue 7799 in
Firefox
* Actually supporting promised Id for webdriver.WebElement.
* Adding more checks for JS functions removed from IE11. Fixes issue 7803
* Fixing use of deprecated API in httpclient
* Fixing use of deprecated API in guava
* Update Closure library to head and compiler to the latest release
* Implementing ability to use FirefoxDriver on a machine where localhost is not the first alias for
127.0.0.1. Fixes issue 3280
* Handle null and empty paths the same as /
* fixing maven build, adding reference to jetty-rc-repacked-5
* adding pom and info on uploading jetty-repacked-5 to maven central
* Adding checks for JS functions removed from IE11. Fixes issue 7780
* Deleting what appears to be unused deps.
* Add more options to the Builder API (every common, settable capability should be covered).
* Require calling Builder.usingServer(url) to use a remote server. If this is not called, the
builder will attempt to create a client locally, throwing an error if it can't (e.g. for IE).
* Add browser specific constructors to simplify creating a client without the Builder.
Fixes issue 7593
* Updating json-cpp lib and replacing mongoose web server with civetweb.
* Safari is flaky. Reducing timeout to fail faster when we're going to fail.
* Catch driver start-up failures.
* Add explicit API for configuring log prefs rather than forcing users to rely on
magic capability strings.
* Clean up internal Firefox logging API.
* Use LogLevelMapping to convert JSON wire protocol name to Level instance.
* Make the jettyMaxThreads parameter actually be effective
* Fix NullPointerException when File#listFiles() returns null. Fixes issue #1934
* Making WDBS.start command a no-op if it was instantiated with an already started driver. Fixes issue 3993
* Handling possible exception in stringification of window.location. Fixes issue 3908
* Modified IE driver server to more closely follow W3C spec
This commit includes a number of changes designed to bring the IE driver
into closer alignment with the W3C WebDriver specification. It provides
no functional changes to the driver, nor does it change any external-
facing API. The changes are:
* Changed webdriver::Server to examine the response from the newSession
command for the session ID rather than a two-stage process. The
webdriver::Server::DispatchCommand method now calls the
InitializeSession method directly when processing the newSession
command.
* Removed the now-obsolete webdriver::Server::CreateSession method.
* Added a Serialize/Deserialize method pair on the webdriver::Command
class (renaming the Populate method to Deserialize).
* Revamped the serialization of webdriver::Command to use 'name' instead
of 'command' for the command name.
* Added a session ID member to the webdriver::Command object.
* Modified the webdriver::Command object to no longer draw distinction
between parameters passed in as part of the URL substitution and those
passed in as part of the JSON payload in the body.
* Modified webdriver::CommandHandler::ExecuteInternal (and all subclass
implementations to use a single parameters map instead of the dual
URL tokens/JSON payload parameters maps used previously.
* Propagate webdriver_firefox_port preference to FirefoxDriver, was being ignored. Fixes issue 5172
* Adding a new selenium server option -logLongForm to log more details to the console. Fixes issue 6645
* Handling possible IllegalStateException while cleaning orphaned and timed out sessions. Fixes issue 6771
* Setting forwarded content for CommandListener afterCommand handler. Fixes issue 7443
* Fixing the list of extensions to search for an executable on Windows, and logging process startup
errors. Fixes issue 7514
* Setting layout.css.devPixelsPerPx to 1.0 if native events are enabled only. Fixes issue 7445
* BODY element is always shown/displayed.
related section in the W3C spec:
https://dvcs.w3.org/hg/webdriver/raw-file/default/webdriver-spec.html#determining-if-an-element-is-displayed
* Implementing switchToParentFrame support in atoms
* Setting HtmlUnit to emulate FF24 by default
* Updating HtmlUnit to 2.15
* Stop polluting the log with stacktraces. Fixes issue 7460
* Returning less specific platform info from firefox driver. Fixes issue 3354
* Adding driver info into TimeoutException thrown by WebDriverWait. Fixes issue 7429
* Implementing switchToParentFrame command for IE driver
* Adding URL endpoint for switchToParentFrame.
Wednesday, August 13, 2014
Interview Questions from different companies on Manual Testing
what is your role in your project ?
what is your daily activity in project ?
Explain STLC ?
difference between Build & Release ?
write test cases for ATM machine ?
what is inner join ?
Why should we hire you ?
why you want to join our organization ?
Expain Boundary value analysis & equivalent partitioning ?
tell us black box testing technique ?
Kring
1)What is the difference b/w SYSTEM REQUIREMENT SPECIFICATIONS
and FUNCTIONAL REQUIREMENT SPECIFICATIONS ?
Zensar
2)what is the difference b/n DPD(Defect profile document) and TRD(Test Report document).
Wipro
3)If there are more number of test cases, how can u pick up a selective test case?
Wipro
4)write a test case for air conditioner
5)When to start Software Testing?
ITC-Infotech:
6)u have 1000 of delete button in ur application ,
how to check it out,.one by one ? or how to check it out by easy way?
Nous:
7)How can you Pick Integration Test Cases?
8.When will you start Regression Testing?
9.What is the difference between QA & QC?
10.When Will you Exit In Testing?
11.Test Deliverable's
12.What are the types of regression testing?
13.What kind of inputs do we need from the end user to start proper testing?
14.What is the difference between windows based appln and web based appln?
century:
15. there are many test cases in our test case repository like
function,integration,system,acceptance test case so which
test case should test engineer test first.? please answer me .
HCL:
1] Test Management Tool ?
2] What is tracebility Matrix?
3] What is RTM ?
4] What Is Functional testing
5] What is Regration Testing and Sanity Testing
6] Diff in Sanity and Functional Tetsing
7] Integration Tetsing
8] Diff in Primary Key and Unique Key -Should pass primary Key as null
9] What is composit Key
10] Defect Management tool in detail
11] What is Seviarity and Priority
12] Composite Key
MTN:
16. Based on what doccuments do you start scripting?/ Testing?
Symbiosis:
17. Can Any Body Explain Major Bugs Find During Manual Testing
Subex:
18. whenever the requirements are not given by the customer what type of testing you do?
IBM:
19. Usually on which server test engineer works?
CTS:
20. What is the difference between Test Director and Quality Center?
21. what qualities a person must have to become a good tester
Semantic-Space:
22. what are reviews in sdlc?
23. How will you test or write test cases when you dont have BRS and SRS?
Softprodigy:
24. what is peer test?
25. What is Data integrity and Data validity
26.Types of reviews?Advantages of reviews?
Diff between process and procedure?
diff b/w verification and validation?
diff b/w cmm,cmmi?
exp tqm,gqm,iso,ieee?
Roles and responsibilities of tester?
Ricks,types of ricks?
what r Quality factors?
27.
1.i have opend 2 gmails i am working with 1 gmail i want to close other gmail by usig script.
2.i have 10 links in a page all of them have same properties& names i want to click on 5link by using script.
3.i have one combobox in that i want to see all the citynames in the combobox and
i have to check weather hyderabad is present or not.
4. size of objectrepository.
5.what r problems we get during writing the script.
6.is it possible to compare to excel sheets in qtp if possible wht is the script.
7.example for lowlevelrecording
Accenture:
28. how many days did u study ur business req specifications for a one year project?
how many days did u write test cases for a one year project?
how often do u get builds in ur company?
29.What is the difference b/w test case and scenario?
30.Can anyone explain about agile software methodology... IBM
31.What is the relation ship between regression testing and pesticide paradox?
32.What is a test data? Give examples
Wednesday, July 30, 2014
SAP TESTING
SAP R/3 :- R stands for- Real-time 3- 3-tier Architecture
ERP stands for Enterprise Resource planning
ERP is a Business Management software-usually a suite of integrated applications-that a company can use to collect, store, manage and interpret data from many business activities.
It Includes:- Product planning, cost and development
Manufacturing or service delivery
Marketing and sales
Inventory management
Shipping and payment
--->SAP ERP or SAP ECC is enterprise resource planning software made by the German company SAP AG.
--->SAP ERP incorporates the key business functions of an organization.
ECC (ERP Central Component) is software version, released as ECC 5.0 in 2004.
--->SAP R/3 is an ERP software package implementation designed to coordinate all the key elements required to complete the business process.
--->SAP designed into different functional modules covering the typical functions of an organization.
How to do testing in sap R/3?
In any SAP Project testing can be happen in 3 phases. Unit testing happens in Dev server. Integration and User Acceptace Test happens in Quality Server.These all are done manually step by step. We have got standard SAP Test Scripts/prepares based on the Client/company/Project. Unit Testing: it can be tested in bits and pieces (Ex: Sales order Creation). Integration Testing: OTC Flow (Create Sales order to Invoice). User Acceptace done by the Client in "Q", if they are satisifed with the result they will give Sign-off for the project. There is another sort of testing so called Automated Regression Testing. that can be done by eCATT/IBM Rational Tools.
SAP Maual Testing (SAP SD, SAP MM, SAP FICO, SAP HR):