понедельник, 17 декабря 2012 г.
пятница, 23 ноября 2012 г.
Add "Git Bash Here" button to Total Commander
Total Commander my default browser, so very useful to have "Git Bash Here" button on the button bar.
After click path is set:
How to add "Git Bash Here" button on the button bar:
Configuration -> Button Bar...
Click Add and fill following fields:
Command:
Parameters:
Tooltip:
Icon file:
C:\Program Files\Git\bin\sh.exe
Parameters:
--login -i
Tooltip:
Git Bash Here
Icon file:
you are able to choose any icon
понедельник, 19 ноября 2012 г.
Install TestNG in Eclipse
This post will explain about installation of TestNG plug-in with Eclipse (Indigo)
There is no need to download any Jar file or exe file for installation. We need to just utilize the “Install New Software” option available in the Eclipse.
Steps for installation:
1. Click Help –> Install New Software
2. Type “http://beust.com/eclipse” in the “Work with” edit box and click ‘Add’ button
3. In the ‘Name’ column we can see “TestNG” –> Select this and click ‘Next’ button
4. Click Next and click on the radio button “I accept the terms of the license agreement”
5. Click ‘Next’ button
6. Click ‘Finish’
This will install the TestNG plug-in for Eclipse
After the installation, it will ask for restart of Eclipse. Then restart the Eclipse.
Once the Eclipse is restarted, we can see the TestNG icons & menu items as in the below figures.
It is very much clearly explained how to setup the TestNG with eclipse. The screenshots make it easy to understand the setting up of TestNG. I hope this will help people who are eager to start using TestNG for their unit testing as well as UI Test Automation with Selenium.
суббота, 17 ноября 2012 г.
Eclipse TOP Hotkeys
Use your hands to write code
You should try to keep your hands on keyboard. The less you touch the mouse, the more code you can write. I am trying to keep the mouse laying still and control the IDE completely using keyboard. What do you think is faster: pressing ALT + C or right clicking the project, selecting Team -> Commit?
It is said, that if a function does not have a key binding, it is useless. Below you will find a set of essential keyboard shortcuts that I love. These shortcuts are set up by default, they should all work.
- CTRL + D
- Delete row. Try it! You no more need to grab the mouse and select the line, no more Home, Shift + End, Delete. Quick and clean.
- ALT + Up/Down Arrow
- Move the row (or the entire selection) up or down. Very useful when rearranging code. You can even select more rows and move them all. Notice, that it will be always correctly indented.
- ALT + Left/Right Arrow
- Move to the last location you edited. Imagine you just created a class Foo, and now you are working on a class Boo. Now, if you need to look at the Foo class, just press Alt+Left Arrow. Alt+Right Arrow brings you back to Boo.
- CTRL+SHIFT+O
- Organize imports. What happens when you first use a class you have not yet imported? You will see an error. But when you press this magical combination, all your missing classes will be imported, and the unused imports will vanish.
- CTRL+1
- Probably the most useful one. It activates the quick fix. Imagine you create a class, which implements some interface. You will get an error, because the inherited methods are not yet implemented. While you are on line where the error occurs, press this combination to activate the quick fix. Now, select the "Add unimplemented methods" option. You can use the quick fix at every error you ever receive.
Quick fix comes handy in other situations too. My favorite is the "Split variable declaration". Sometimes I need to broaden the scope of a variable. I activate the quick fix, split declaration, and use alt + arrow to put it where it belongs. You can find even more usages: Convert local variable to field, rename in file, Inline local variable..
You could use the "Split variable declaration" on the bar variable, and then move it with Alt+Arrows above the try block..
Or you could use the "Add unimplemented methods" fix here.
The best thing you can do if you see an error is to use the quick fix. - CTRL+SHIFT+T
- Open Type. Imagine, that you need to have a look at the Foo class. But, where is the Foo class? Is it in the Boo project and in the foo.bar package? Or somewhere else? With this shortcut, you don't need to know. Just press it, type Foo and you are in.
- CTRL+E
- Shows you a list of all open editors.
- CTRL+F6
- Use to move between open editors. This is an slower alternative to Ctrl + E. Comes handy in a situation when you want to periodically switch between two editors, something, what is nearly impossible with Ctrl+E as it sorts entries quite randomly. Or you might just use Alt+Arrows..
- CTRL+F7
- Move between views. When in editor, press Ctrl+F7 to switch to the Package Explorer, or hold Ctrl and press F7 multiple times to switch to other views.
- CTRL+F8
- Move between perspectives. The same as previous.
- CTRL + F11
- Runs the application. What gets launched depends on your settings. It will either launch the last launched class (my preffered way) or it will launch currently selected resource (the default way). If you want to change its behavior read the previous post.
- CTL + N
- Open new type wizard. This is not very quick because you have to select the wizard type (weather you want to create new class, jsp, xml or something else) in the next step. Much faster way would be if you could just hit the shortcut and invoke the particular wizard. It is possible, just keep reading..
- CTRL + M
- Maximize or umaximize current tab.
- CTRL + I
- Corrects indentation.
- CTRL + SHIFT + F
- Formats code. You can make a beautiful looking code out of a mess with this. It requires a bit of setup, but it is well worth it. You can find its settings under Window->Preferences->Java->Code style->Formatter
- CTRL + J
- Incremental search. Similar to the search in firefox. It shows you results as you type. Don't be surprised, if you hit this combination, nothing happens - at the first glance. Just start typing and eclipse will move your cursor to the first ocurence.
- CTRL + SHIFT + L
- Shows you a list of your currently defined shortcut keys.
I don't like your shortcuts
Such is life nowadays. Remember, you can always change those bindings to match your preferences. Open Windows->Preferences->General->Keys. Now you can use the filter to find your shortcut and change its binding.
The real fun begins when you cannot find the command you are looking for. The key here, is to have the "Include unbounds commands" checkbox checked. It will show you all commands, even those, which have no keys bound.
While you are here, I recommend to add the following bindings:
While you are here, I recommend to add the following bindings:
- CTRL+SHIFT+G
- Bind this to "Generate getters and setters". This is a "must have".
- ALT+C
- Bind this to SVN/CVS "Commit".
- ALT+U
- Bind this to SVN/CVS "Update".
Let me demonstrate a quick way to create new class now.
Hit CTRL + SHIFT + N (or the combination you assigned in the previous step). This should bring up new class wizard. Type in the name and press ALT+E. You can now select a class which will be a superclass for the newly created class. Hit ALT+A and select all implemented interfaces . Now hit ALT+F and your class will be generated. Eclipse will also provide the default implementation for all abstract and interface methods you inherited.
Did you notice the weird underscores everywhere in the dialog? They give you a hint about the shortcut key. Hit ALT and the underlined letter to press the button, check the checkbox or get focus for a textfield.
Did you notice the underscores?
I think that using shortcut keys is the fastest way to productivity and if not, then at least your wrists will say you a silent thanks. Now, don't wait, go on and assign keys to the features you use most.
I think that using shortcut keys is the fastest way to productivity and if not, then at least your wrists will say you a silent thanks. Now, don't wait, go on and assign keys to the features you use most.
One final tip from Andriy:
The problem is that there are so many keyboard shortcuts. I used to keep a printout with all the shortcuts I wanted to use. Finally I wrote an Eclipse plugin MouseFeed, which reminds the keyboard shortcuts for the actions called with mouse. You can even tell it to enforce some shortcuts - the action will run only if called with a keyboard shortcut.
So if you are struggling with yourself, if you want to use shortcuts, but always subconsciously touch the mouse, install the plugin and let it enforce the shortcuts - the mouse will be useless and you will be forced to use keyboard.
What shortcuts do you use?
Reference:
четверг, 15 ноября 2012 г.
Selenium Webdriver with htpasswd (Authentication Required)
How can I use Selenium Webdriver to login to the site with htpasswd - Authentication Required (modal dialog with HTTP basic authentication)
I know only one way to login to the site with htpasswd protection - it is use username and password in the URL (something like this: http://username:password@example.com/test ):
public static void main(String[] args) {
// Create a new instance of the Firefox driver
// And now use this to visit website with htpasswd
WebDriver driver = new FirefoxDriver();
driver.get("http://username:password@example.com");
}
By the way, this won't work in Internet Explorer because Microsoft has disabled username/password in URLs - ref.
To fix that you can set an "iexplore.exe" DWORD to 0 in HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_HTTP_USERNAME_PASSWORD_DISABLE.
воскресенье, 4 ноября 2012 г.
How to integrate Sikuli script with Selenium WebDriver (WebDriver and Sikuli Integration)
How to integrate SIKULI script with SELENIUM WEBDRIVER
Sikuli is a robust and powerful tool to automate and tests user interfaces screenshots. The core of Sikuli Script is written in Java, which means you can use Sikuli Script as a standard JAVA library in your program. This article lets you know how to do that.
1. Download and install Sikuli using the self-extracting installer(http://www.sikuli.org/download.html).
Note: Only 32-bit version is provided for using as a standard JAVA library. But SIKULI IDE could run on both 32-bit and 64-bit Windows systems.
2. Create new Java project (use Eclipse as an example):
3. Fill project name and click Finish:
4. Create new class:
5. Fill class name and click Finish:
6. Include sikuli-script.jar, selenium-server-standalone-2.25.0.jar, selenium-java-2.25.0.jar in the CLASSPATH of your Java project.
Get sikuli-script.jar from your Sikuli IDE installation path.
Sikuli Script is packed in a JAR file - sikuli-script.jar. Depending on the operating system you use, you can find the sikuli-script.jar in according places.
Windows, Linux: Sikuli-IDE/sikuli-script.jar
Mac OS X: Sikuli-IDE.app/Contents/Resources/Java/sikuli-script.jar
Sikuli Script is packed in a JAR file - sikuli-script.jar. Depending on the operating system you use, you can find the sikuli-script.jar in according places.
Windows, Linux: Sikuli-IDE/sikuli-script.jar
Mac OS X: Sikuli-IDE.app/Contents/Resources/Java/sikuli-script.jar
After click OK:
7. After configuring in build path, create and initialize an instance of Screen object.
SIKULI + SELENIUM WEBDRIVER
import org.junit.Test;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.sikuli.script.App;
import org.sikuli.script.FindFailed;
import org.sikuli.script.Pattern;
import org.sikuli.script.Screen;
public class sikuliFirstTest {
@Test
public void functionName() throws FindFailed {
// Create a new instance of the Firefox driver
WebDriver driver = new FirefoxDriver();
// And now use this to visit Google
driver.get("http://www.google.com");
//Create and initialize an instance of Screen object
Screen screen = new Screen();
//Add image path
Pattern image = new Pattern("C:\\searchButton.png");
//Wait 10ms for image
screen.wait(image, 10);
//Click on the image
screen.click(image);
}
}
Here example using SIKULI without Selenium WebDriver:
import org.junit.Test;
import org.sikuli.script.App;
import org.sikuli.script.FindFailed;
import org.sikuli.script.Pattern;
import org.sikuli.script.Screen;
public class sikuliFirstTest {
@Test
public void functionName() throws FindFailed {
//Open FireFox application with google home page
App firefox = App.open("c:\\Program Files\\MozillaFirefox\\firefox.exe");
//Create and initialize an instance of Screen object
Screen screen = new Screen();
//Add image path
Pattern image = new Pattern("C:\\searchButton.png");
//Wait 10ms for image
screen.wait(image, 10);
//Click on the image
screen.click(image);
//Close firefox
firefox.close();
}
}
Maximize browser window in Selenium Web Driver(how to get full screen in selenium webdriver)
Maximize browser window in Selenium Web Driver(3 ways how to get full screen in selenium webdriver)
1) The very first method which is given in their documentation is using maximize() command of selenium instance:
public static void main(String[] args) {
// Create a new instance of the Firefox driver
// And now use this to visit Google
WebDriver driver = new FirefoxDriver();
driver.get("http://www.google.com");
// Maximize browser window
driver.manage().window().maximize();
}
2) Maximize the browser window according to your system's current resolution using the toolkit utility which query the native operating system directly and is platform independent:
public static void main(String[] args) {
// Create a new instance of the Firefox driver
WebDriver driver = new FirefoxDriver();
//Set the upper left corner of the screen starting point
driver.manage().window().setPosition(new Point(0,0));
//define screen size
java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
// define desired size
Dimension maxWindowSize = new Dimension((int) screenSize.getWidth(), (int) screenSize.getHeight());
// Maximize the browser window according to your system's current resolution(set desired size)
driver.manage().window().setSize(maxWindowSize);
}
3) Third method emulate enter to fullscreen mode, same as pressing F11:
public static void main(String[] args) {
// Create a new instance of the Firefox driver
// And now use this to visit Google
WebDriver driver = new FirefoxDriver();
driver.get("http://www.google.com");
// Find the body and then send F11
driver.findElement(By.tagName("body")).sendKeys(Keys.F11);
}
понедельник, 29 октября 2012 г.
Basic QA testing interview questions and answers
What is Quality?
· Customer
satisfaction? Subjective term. It will depend on who the ‘customer’ is. Each
type of customer will have their own view on ‘quality’
What is Software
Quality?
· Measurement
of how close is actual software product to the expected (intended) product
· Customer
satisfaction (to who?)
·
Quality Software: reasonably bug-free, delivered on time and within budget,
meets requirements and/or expectations, and is maintainable
What is Software
Quality Assurance?
·
Software QA is the process of monitoring and improving all activities
associated with software development, from requirements gathering, design and
reviews to coding, testing and implementation.
What is the
difference between Software Testing and Software QA?
· Testing
is mainly an ‘error detection’ process
· Software
QA is ‘preventative’. It aims to ensure quality in the methods & processes.
(“Quality Assurance” measures the quality of processes used
to create a quality product)
What is Software
Testing?
·
Software Testing is the process of analyzing the software in order to detect
the differences between existing and required conditions and to evaluate the
features of the software. It involves the
entire software development process:
- monitoring and improving the process
- making sure that any agreed-upon standards and procedures are followed
- ensuring that problems are found and dealt with, at the earliest possible
stage
· The
purpose of testing is verification, validation and error detection (in order to
find and fix the problems)
- Verification is checking for conformance and consistency by evaluating the results against pre-specified requirements. (Verification: Are we building the system right?)
- Validation is the process of checking that what has been specified is what the user actually wanted. (Validation: Are we building the right system?)
- Error Detection: finding if things happen when they shouldn’t or things don’t happen when they should.
- Verification is checking for conformance and consistency by evaluating the results against pre-specified requirements. (Verification: Are we building the system right?)
- Validation is the process of checking that what has been specified is what the user actually wanted. (Validation: Are we building the right system?)
- Error Detection: finding if things happen when they shouldn’t or things don’t happen when they should.
Is it possible to
find/fix all the bugs in a software product before it goes to the customers? Why
test?
· To
establish and to enforce business systems of the QA Organization (Test
planning, bug tracking, bug reporting, test automation, release certification,
and others)
What is
black/white box testing?
· Black
box software testing is done without access to the source code.
· White
box testing is done with access to the code. Bugs are reported at the source
code level, not behavioral.
Describe a bug?
· Mismatch
between actual behavior of a software application and its intended (expected)
behavior. We learn about expected behavior from requirements,
specifications, other technical documentation.
What is use case?
· Use
cases are used by Business Analysts as a format for specifying system
requirements. Each use case represents completed business operation performed
by user. From the QA prospective we would need to execute End-To-End test
to make sure the requirement is implemented.
· Find
more here: http://searchsoftwarequality.techtarget.com/sDefinition/0,,sid92_gci334062,00.html
What is the most
important impact QA can have on a product development process?
· Clarifying
requirements
· Bringing
down percentage of code re-written due to the change in requirements
What is Negative
testing? Positive?
· Positive
testing aimed at showing software works as intended when user does what
he/she does correct actions.
· Negative
testing aimed at showing that software handles properly situations in which
user acts not as user is supposed to act (invalid inputs, unreasonable
selections of settings, etc.)
Which type of
testing results in highest number of bugs found?
· Negative
testing (versus Positive testing of same type)
What is the
software development life cycle?
· The
software development life cycle (SDLC) is a conceptual model used in project
management that describes the stages involved in an information system
development project, from an initial feasibility study through maintenance of
the completed application. Read more -http://searchsoftwarequality.techtarget.com/sDefinition/0,,sid92_gci755068,00.html
What is a Test
Case?
- Set of conditions and/or variables
under which a tester will determine if a requirement upon an application
is satisfied
What does Test
Case include?
When planning for
testing the test case:
- Test case ID
- The purpose (Title, Description) of
the test case
- An instruction on how to get from
the application base state to a verifiable application
output or expected result
- Expected result
When execute test
cases we need two more columns:
- Actual result
- PASS/FAIL indication
What is a test
plan?
- Document
that describes the objectives, scope, approach, and focus of a software
testing effort.
- The process of preparing a test
plan is a useful way to think through the efforts needed to validate the
acceptability of a software product. The completed document will help
people outside the test group understand the 'why' and 'how' of product
validation. It should be thorough enough to be useful but not so thorough
that no one outside the test group will read it.
What does Test
Plan include?
The following are some of the items
that might be included in a test plan, depending on the particular project:
* Title
*
Identification of software including version/release numbers
* Revision
history of document including authors, dates, approvals
* Table of
Contents
* Purpose
of document, intended audience
* Objective
of testing effort
*
Software product overview
* Relevant
related document list, such as requirements, design documents, other test
plans, etc.
* Relevant
standards or legal requirements
*
Traceability requirements
* Relevant
naming conventions and identifier conventions
* Overall
software project organization and personnel/contact-info/responsibilities
* Test
organization and personnel/contact-info/responsibilities
*
Assumptions and dependencies
* Project
risk analysis
*
Testing priorities and focus
*
Scope and limitations of testing
* Test
outline - a decomposition of the test approach by test type, feature,
functionality, process, system, module, etc. as applicable
* Outline
of data input equivalence classes, boundary value analysis, error classes
* Test
environment - hardware, operating systems, other required software, data
configurations, interfaces to other systems
* Test
environment validity analysis - differences between the test and production
systems and their impact on test validity.
* Test
environment setup and configuration issues
* Software
migration processes
* Software
CM processes
* Test data
setup requirements
* Database
setup requirements
* Outline
of system-logging/error-logging/other capabilities, and tools such as screen
capture software, that will be used to help describe and report bugs
*
Discussion of any specialized software or hardware tools that will be used by
testers to help track the cause or source of bugs
* Test
automation - justification and overview
*
Test tools to be used, including versions, patches, etc.
* Test
script/test code maintenance processes and version control
* Problem
tracking and resolution - tools and processes
* Project
test metrics to be used
* Reporting
requirements and testing deliverables
* Software
entrance and exit criteria
* Initial
sanity testing period and criteria
* Test
suspension and restart criteria
*
Personnel allocation
* Personnel
pre-training needs
* Test
site/location
* Outside
test organizations to be utilized and their purpose, responsibilities,
deliverables, contact persons, and coordination issues
* Relevant
proprietary, classified, security, and licensing issues
* Open
issues
* Appendix
- glossary, acronyms, etc.
Write test cases
for a text field?
- 5 test cases for capacity including
2 for each boundary and one for the class between boundaries
- 3 test cases for valid/invalid
input of letters, digits, special characters
- One test cases for each allowed
special character (email field as an example)
- Functionality testing if there is
any functionality (validation of input as an example, case sensitivity,
required field, etc.)
What is Test matrix
Data collection mechanism. It
provides a structure for testing the effect of combining two or more variables,
circumstances, types of hardware, or events. Row and column headings identify
the test conditions. Cells keep the results of test execution.
If there are so
many settings/options to choose, how to write test cases?
- Test cases should be developed for
all most common potential scenarios
- They should cover most of the
positive input
Beside test case
& test plan, what documents are required to write?
· Check
Lists
· Test
matrices
· Test
design specs
· End-to-end
tests
· Test
summary reports
· Bug
reports
Describe risk
analysis
Risk analysis means the actions
taken to avoid things going wrong on a software development project, things
that might negatively impact the scope, quality, timeliness, or cost of a
project. This is, of course, a shared responsibility among everyone involved in
a project. However, there needs to be a 'buck stops here' person who can
consider the relevant tradeoffs when decisions are required, and who can ensure
that everyone is handling their risk management responsibilities.
How will you write
test cases for testing fields LOGIN & PASSOWRD, positive and negative
testing?
Testing boundary
conditions? Why? How?
- Boundary value analysis is a
methodology for designing test cases that concentrates software testing
effort on cases near the limits of valid ranges.
- Boundary value analysis is a method
which refines equivalence partitioning. It generates test cases
that highlight errors better than equivalence partitioning. The trick is
to concentrate software testing efforts at the extreme ends of the equivalence
classes. At those points when input values change from valid to
invalid errors are most likely to occur. As well, boundary
value analysis broadens the portions of the business requirement document
used to generate tests.
For example, if a valid range of quantity on hand is -9,999 through 9,999, write test cases that include:
1. the valid test case quantity on hand is -9,999,
2. the valid test case quantity on hand is 9,999,
3. the invalid test case quantity on hand is -10,000 and
4. the invalid test case quantity on hand is 10,000
What is the
difference between a test case and a test plan?
- Test plan is the most comprehensive
Software Testing document that describes the objectives, scope,
approach, and focus of a software testing effort
- Test case is the smallest Software
Testing document that describes both typical and atypical situation (set
of conditions and/or variables) that may occur in the use of
an application (under which a tester will determine if a requirement upon
an application is satisfied).
Which documents
would you refer to when creating Test Cases?
All business and technical
documentation available:
- BRD - Business Requirements
Document
- Functional Specifications
- Manuals and Help
- Use Cases
- Test Design
- Third party publications (books,
published by independent authors)
What is Business
Requirements Document (BRD)?
BRD is written by the Business
Analysts. It details the business
solution for a project including the documentation of customer needs and
expectations.
The
most common objectives of the BRD are:
-
To gain agreement with stakeholders
-
To provide a foundation to communicate to a technology service provider what
the solution needs to do to satisfy the customer's and business’ needs
-
To provide input into the next phase for this project
-
To describe what not how the customer/business needs will be met by the
solution
What are Bug
Report components?
What fields do you
fill out in a Bug Report?
Describe to me the
basic elements you put in a defect/bug report?
· Report
number: Unique number given to the report
· Application
/ Module being tested
· Version
& release number
· Problem
Summary / Short Description / Synopsis
· Steps
to reproduce (Detailed Description)
· Severity
(Critical, Serious, Minor, Suggestion)
· Priority
(High, Medium, Low)
· Environment
(Software and/or hardware configuration)
· Reported
by
· Assigned
to
· Status
(Open, Pending, Fixed, Closed, cannot reproduce, etc.)
· Resolution
/ Notes
· Keywords
If you find a bug
and the developer says it is as-designed, what can you do?
- find an exact requirement, which
defines the way it should be designed
- if there is no specific requirement compare to same feature implemented in quality applications (ask your manager which applications to compare to)
- if there is no specific requirement compare to same feature implemented in quality applications (ask your manager which applications to compare to)
How do you write a
bug report?
· Rule of WWW -
What happened, Where it happened, under Which circumstances
· Write
one bug report for each fix to be verified
· Bug
report should be as complete as possible
· Bug
reports are as concise as possible
· Report
a bug immediately, do not postpone
· Use
technical terms, not "people off the street" language
What is the most
important part of bug report?
· Steps
to reproduce
· Short
Description
· Severity
· Priority
· Status
What is the bug
life cycle?
The bug should go through the life
cycle to be closed. Here are the stages:
- bug found
- bug reported
- bug assigned to developer
- bug fixed by developer
- fix verified by tester
- bug closed
- bug found
- bug reported
- bug assigned to developer
- bug fixed by developer
- fix verified by tester
- bug closed
How can a tester
be sure that bug was fixed?
- execute the steps in
the bug report
- make sure the fixed bug does not result in new bugs in same area.
- make sure the fixed bug does not result in new bugs in same area.
Describe the QA
Process
QA processes include:
1) Test Planning Process
2) Test Development Process
3) Test Execution Process
4) Defect Management Process
5) Test Reporting Process
1) Test Planning Process
2) Test Development Process
3) Test Execution Process
4) Defect Management Process
5) Test Reporting Process
What is Unit
Testing?
· The
goal of unit testing is to isolate each part of the program and show that the
individual parts (units) are correct.
· A
unit is the smallest testable part of an application. It may be an individual
function or procedure.
· Unit
testing is provided by developers, not testers.
What is
· Testing
of an API (Application Programming
Interface), which is a collection of software functions and procedures.
· API testing
is mostly used for testing system software, application software or libraries.
· It
is a white box testing method.
· API testing
(done by QA Team) is different from Unit testing (done by developers).
What is the
Performance Testing? ?
Performance testing is to determine
how fast some aspect of a system performs under a particular workload. It can
also serve to validate and verify other quality attributes of the system, such
as scalability, reliability and resource usage.
What is Stress
Testing?
Stress test
puts a emphasis on robustness, availability, and error handling under
a heavy load, rather than on what would be considered correct behavior under
normal circumstances. The goal may be to ensure the software doesn't crash in
conditions of insufficient computational resources (such as memory or disk
space), unusually high concurrency, or denial of service attacks.
What is a
Regression Testing?
Partial retesting of a modified
program to make sure that no errors were introduced while making changes to the
code (developing new or fixing existing one)
What is an Acceptance Testing?
Acceptance testing is black-box
testing performed on a software prior to its delivery. Acceptance testing by
the system provider is distinguished from acceptance testing by the customer
(user acceptance testing - UAT).
What do you
prefer: white or black box testing?
- Stick to the objective stated in
your resume (Portnov School graduates
normally apply for black box testing positions)
How do you
determine when you have done enough testing?
Testing process comes to the point
at which additional tests will not significantly change quality of the software.
Which tools are
used to write Test Cases?
- Test Management Tools such as HPQuality Center ,
Zephyr, Rational TestManager
- Test Management Tools such as HP
- Many companies use spreadsheets
(Excel) or word processors (Word)
What is
walk-through meeting?
Walk-through meeting is a form of software peer review in which a designer or programmer leads members of the development team and other interested parties through a software product, and the participants ask questions and make comments about possible errors, violation of development standards, and other problems.
Walk-through meeting is a form of software peer review in which a designer or programmer leads members of the development team and other interested parties through a software product, and the participants ask questions and make comments about possible errors, violation of development standards, and other problems.
What is Build?
In a programming context, a build is a version of a program. As a rule, a build is a pre-release version and as such is identified by a build number, rather than by a release number. Reiterative (repeated) builds are an important part of the development process. Throughout development, application components are collected and repeatedly compiled for testing purposes.
What is Test
Strategy?
A test strategy is an outline that
describes the testing portion of the software development cycle. It is created
to inform project managers, testers, and developers about some key issues of
the testing process.
What does Test
Strategy include?
This includes the testing objective, methods of testing new functions, total time and resources required for the project, and the testing environment.
This includes the testing objective, methods of testing new functions, total time and resources required for the project, and the testing environment.
Подписаться на:
Сообщения (Atom)