Software Testing Lab Manual
Software Testing Lab Manual
LAB MANUAL
DEPARTMENT OF INFORMATION SCIENCE & ENGINEERING
R V COLLEGE OF ENGINEERING
I M UMESH
Programmer
Department of ISE
VII SEMESTER
In HLD phase, data flow diagrams, flow charts and schemas are prepared.
In LLD phase, the pseudo codes, the frameworks and the related database are designed.
2.4 Coding
Developing the software according to the requirement of the client by using some technology is
called coding. This phase produces the software that meets the requirements the design was
meant to satisfy.
2.5 Testing
Testing is the process of ensuring the code developed by the developer is as per the
requirement of the client. By testing the product, an organization identifies and removes as
many defects as possible before releasing it.
2.6 Release and Maintenance
Once the product is tested, it is given to customers to deploy it in their environments. Once all
the functionalities meet the requirement, the software will be in the maintenance phase till
contract with client.
3. Types of Testing
There are three types
Code Coverage
Path Coverage
Condition Coverage
Loop Coverage
Mutation Coverage
Code coverage: Testing the program whether all the written code is executable or not.
Path coverage: Here, the flow charts are written and tested for all independent paths.
Ex:
Main
Module -1
Module-2
Module-3
Module-4
Module-5
Each path will be tested to know how the independent path reaches module-5.
Condition Coverage: All logical conditions should be tested both at their true and false values.
Ex:
If (condition)
{
Statements
}
Else
{
Statements
}
Loop Coverage: Test all the loops for all the cycles.
Ex:
While (loop=10)
{
If (loop==5 & condition A)
{
Break;
}
}
Mutation Coverage: Mutation testing is the process in which the bug is introduced and the
script is checked.
3.2 Grey Box Testing (Integration Testing)
Checking the interface after integrating two or more modules is known as Grey Box Testing.
Interface between the modules can be checked by sending the data from one module to
another module. Then check whether one module is sending the data properly and another
module is receiving the data properly. If the data flow is established between these modules,
then the interface between the modules is correct, otherwise it is a defect.
Approaches to integration testing are,
Incremental Testing
Bottom up approach
Here, the child modules are combined and they are integrated with the parents. Testing starts
from last child
Child-3
Child-2
Child-1
Parent
B
E
Sandwich Approach
Doing both incremental and non incremental testing for an application is called sand witch
testing.
Parent
Child-1
Child-2
Child-3
Functional Testing
Non Functional Testing
Load Testing
Applying some load to the server i.e., at the normal condition and checking the response
time is called as load testing.
Stress Testing
Applying abnormal load to the server i.e, applying above the limit (capacity) of the server
and checking the response time of the server is called as stress testing.
Crash Testing
Applying the abnormal load to the threshold point of the server where the server gets
disconnected from the front end due to exceeded limit is called as crash Testing.
Soak Testing
Applying the load to the server for the prolonged period of time is called as soak testing.
Recovery Testing
When a huge load is fired to the server, it gets disconnected or shuts down. The server will
take some time to reboot and restart. Studying the time taken for recovery to the normal
position is known as recovery testing.
Volume Testing
The amount of data given to the machine and checking whether the machine can handle
the load of that data is called as volume testing.
Performance Testing
Applying the load and checking the response time at the given frame of time is called as
performance testing.
Smoke Testing
Testing the major functionality of the application after the deployment of the build is called
as smoke testing. The main objective of doing the smoke testing is to check the stability of
the build or application.
System Testing
System Testing is a form of black box testing. This test validates the accuracy and
completeness in performing the functions as assigned.
Retesting
Testing the failed test case again and again is called as retesting.
Regression Testing
Testing the software for after change or addition of any part is called as regression testing.
This ensures that change will not have any ill effect on other parts of the software.
Regression Testing is performed in 3 phases.
1. Unit level regression testing
2. Module level regression testing
3. Application level regression testing
Ad hoc Testing
Testing the application randomly without following any process is called as ad hoc testing.
Ad hoc testing is generally done by an experienced person who has the complete
knowledge of the particular domain or project. This type of testing is done when there is a
limited time for release.
Compatibility Testing
Testing the application with different hardware, softwares and operating system is called as
compatibility testing. This type of testing is also called as reliable testing.
Exhaustive testing
Testing the complete application with all kind of approach is called as exhaustive testing.
Parallel Testing
Testing the functionality with two different plat forms is called parallel testing.
Security Testing
Testing the authentication and authorization of different levels of users of an application is
known as Security Testing.
Test
Initiation
Test
Plan
Test
Design
Test
Implementation
Test
Execution
Analysis of
Result &
Reporting
In this section of the test plan, the brief description of the domain, project, the testing team
and their roles and responsibilities will be written. Basically, this case section is prepared by the
project manager and some senior test engineers.
Objective
The goal of the testing team at the end of the project will be mentioned in this section.
Scope of testing
It is an opportunity to get into the application as deeper as possible. Here we will plan the areas
which need to be tested more in the application.
Strategies
Types of testing to be carried out in each and every level of the testing.
Approach
Approach varies in the situation. If the release date gets pre pone, we need to change our
strategy. In many cases, we are forced to go for the adhoc testing.
Here, we will define the entry and exit criteria of each and every level, right from unit level
testing to end of UAT.
Here we will mention when to stop our testing and when to resume (restart) our testing.
The deliverable documents are Test Plan document, Test Case document, Bug status report,
RTM document.
Scheduling
Here, we will plan the overall time of testing the application. According to the scheduling, we
will prepare strategy and approach.
Test initiation
Test Plan
Test Case
Execution
Buffer
Budget
The over all expenses to be spent on the project is estimated and planned.
Release
Matrix
There are some matrixes which will be prepared at the starting and at the end of the test
case.
o Requirement Traceability Matrix
o Defect Density Matrix
Description
Priority
Here, the features to be tested and features not be tested are written, features to be tested
include,
All the functionality of the primary application,
Connectivity to the third party software,
Performance of database,
Look and feel of primary application
Features not be tested include,
Third party software
User Action
System Response
Relevant Data
Alternate Course
Exceptions
Expected
Result
Status
Pass/ Fail
Remarks
3,4,5
4,5 PASS
Y-1,Y,Y+1
7,8,9
7,8 PASS
3,9 FAIL
If the input is Boolean, then design the test cases for true and false.
Invalid Class
Positive cases
Ex 1:
Ex 2:
Ex 2:
Ex 3:
EG (Error Guessing)
In this method, a tester, based on his experience and intuition, guesses probability of certain
types of errors and proceeds to expose them. Testers prepare check list comprising of all
possible errors plus error prone situations. Availability of checklists could make even relatively
less experienced testers intuitive
Dynamic Testing
It is a validation process
It is about cure
It is a quality control process
Here, the test is conducted by passing the data
into application and with executing the code
Examples: Smoke Testing
Functional testing
Integration testing
Description
Features of lock
Features of a key
Actions Performed
States
Inputs
Expected outcome
Requirement id
Description
Inserting the key numbered 123 and turning it clockwise
should facilitate locking
Priority
BR-01
BR-02
BR-03
4
5
BR-04
BR-05
M
M
BR-06
BR-07
L
L
TEST CASES
Document Reference No
Project Name
Module Name
Released By
Date Of Release
Remarks
:
:
:
:
:
:
Functionality 001
Lock
NA
ISE-RVCE
03/09/2013
SL
No:
Test Case ID
Scenario
Discription
TC_LOCK_001
TC_LOCK_002
5
6
Test Data
Expected Result
123
Turn it anticlock wise
Insert the key numbered
125
Insert the key numbered
125
Turn it anticlock wise
Insert the screw driver
Turn it clock wise
Actual
Result
Status
Pass/Fail
Remar
ks
Description
Inserting the key numbered 123 and
turning it clockwise should facilitate
locking
Priority
TC_LOCK_001
BR-02
TC_LOCK_002
BR-03
TC_LOCK_003
TC_LOCK_004
BR-04
TC_LOCK_005
BR-05
TC_LOCK_006
BR-06
TC_LOCK_007
BR-07
Not implemented
Study the functionality of Pen and write CRS, SRS, Test cases and RTM
Derive the functional test cases from the specification of a protocol like SMTP, TCP, IMAP, etc.
Use the test cases to test an actual implementation from the Open Source. Collect the different
metrics from the test execution.
SMTP
On the internet, mail is sent from mail host to mail host using the simple mail transfer protocol
(SMTP). To send and receive mail, you must get it from and send it to a mail host. Every mail
host runs a mail transfer agent (MTA) such as Exim that accepts mails and passes them on.
SMTP functions in two ways. Firstly, it verifies the configuration of the computer from where the
email is being sent and grants permission for the process. Secondly it sends out the message and
follows the successful delivery of the email. If the email can not be delivered, its returned to the
sender.
To test SMTP, we go through 6 steps:
1.
2.
3.
4.
5.
6.
Connect
Handshake
Identify Sender
Identify Recipient
Provide Message Body
End Session
Metrics
Metrics derive information from raw data with a view to help in decision making. Collecting and
analyzing metrics involves effort and several steps. The first step is to decide what measurements
are important and to collect the data accordingly. The effort spent on testing, number of defects,
and number of test cases are some examples of measurements. Measuring and producing metrics
to determine the progress of testing is thus very important.
Following is the test case document to test the functionality of SMTP severs.
Document Reference No
Project Name
Module Name
Released By
Date Of Release
Remarks
SL
No
Test Case
ID
:
:
:
:
:
:
Functionality 001
Protocol
SMTP
RVCE-ISE
04/04/2010
Scenario
TC_PTC_SMTP
_001
TC_PTC_SMTP
_002
SMTP Server
response
TC_PTC_SMTP
_003
TC_PTC_SMTP
_004
TC_PTC_SMTP
_005
TC_PTC_SMTP
_006
Description
Open the command
prompt
Type telnet <Server
Name/IP> 25
Hit Enter Key
Open the command
prompt
Type Hello <Server
Name/IP>
Hit Enter Key
Open the command
prompt
Type senders mail ID
Open the command
prompt
Type receiver mail ID
Open the command
prompt
Type Data
Open the command
prompt
Type subject
Hit Enter Key
Test Data
telnet smtpserver 25 or
telnet <ip> 25
Helo smtpserver
mail
from:[email protected]
rcpt to:[email protected]
Data
Expected
Result
SMTP Server
Message
should appear on
the screen
250 smtpserver
Hello [IP Address]
Message should
appear
Should display
appropriate
message on the
screen
Should display
appropriate
message on the
screen
Should display
appropriate
message on the
screen
Appropriate
message should
appear
Study the functionality of TCP, IMAP and POP3 and write the test cases.
Actual
Result
Status
Pass/Fail
Remarks
Write the test cases to test the most popular features of a popular websites. Automate the test
cases using a tool like Selenium. Execute the test cases from the tool and manually. See the
difference in time taken.
actiTime is an application which includes several modules. Following are some of the
functionalities of actTime.
Enter and view Time-Track for the Current Week, selected month
Task Management
User Management
Document Reference No
Project Name
Module Name
Released By
Date Of Release
Remarks
SL
No
:
:
:
:
:
:
Functionality 001
ActiTime
Login
ISE-RVCE
04/04/2010
Expected
Result
Test Case ID
Scenario
Description
Test Data
TC_AT_LG_001
Successfully
Open the
URL
Open an Explorer
Type URL
Press Button GO
http://127.0.0.1:808
1/login.jsp
TC_AT_LG_002
Successfully
Open the
URL
http://128.0.0.1:808
1/login.jsp
Home page
should not
appear
TC_AT_LG_003
Successful
Login
Open an Explorer
Type URL
Press Button GO
Enter the valid
username
Enter the valid pwd
Press the Login
Button
admin
manager
Should Open
Home Page
TC_AT_LG_004
TC_AT_LG_005
Unsuccessfu
l Login
admin1
manager
Unsuccessfu
l Login
admin
managar
Home page
should appear
"Username or
Password is
invalid.
Please try
again"
Message
should appear
"Username or
Password is
invalid.
Please try
again"
Message
should appear
Study the functionality of other modules in actiTime application and write the test cases.
Actual
Result
Status
Pass/Fail
Remarks
Selenium
Selenium is a functionality testing tool that supports development of test automation for web
applications. Selenium consists of three major tools each one having specific role viz., Selenium
IDE, Selenium-RC and Selenium-Grid. Selenium-IDE and Selenium-RC are discussed in detail
in this book.
1. Selenium-IDE
Selenium-IDE is an easy-to-use Firefox plug-in. It is an interface for developing and running
individual test cases or group of test cases called test suite. It is the most efficient way to develop
test cases.
Open the location Selenium-IDE using Firefox browser (enter the path in URL location)
Restart Firefox
Open the location Selenium-IDE using Firefox browser, Select Install Now
Restart Firefox
To start, select Selenium IDE from the Firefox Tools menu. It opens with an empty scriptediting window and a menu for loading, or creating new test cases. The File menu options
include create, open and save test case and test suite files. The options of Edit menu are copy,
paste, delete, undo and select all operations for editing the commands in your test case. The
Options menu is for changing settings. The Help menu is the standard Firefox Help menu; UIElement Documentation item in this menu is related to Selenium-IDE.
The toolbar contains buttons for controlling the execution of your test cases.
Speed Control is used to control the speed of test case running.
Run All is used to run the entire test suite.
Run button is used to run the currently selected test.
Pause/Resume allows stopping and re-starting of a running test case.
Step allows running one command at a time.
Apply Rollup Rules allows grouping of repetitive sequences of Selenium Commands to a single
action.
Record records the users browser actions.
Table tab displays the command and their parameters. The Command, Target, and Value entry
fields display the currently selected command along with its parameters. These are entry fields
where you can modify the currently selected command. The first parameter occupies the Target
field and the second parameter occupies the Value field. Commands can be selected by a
populated list after typing a first character.
The Source tab displays the test case in HTML format. It can be changed to a programming
language such as Java or C#, or a scripting language like Python. The Source view enables the
tester to edit the test case.
Bottom pane
This is used for four different functionsLog, Reference, UI-Element, and Rollup
Log tab displays the error messages and other information messages. These messages are used
for test case debugging. The Log pane contents can be cleared by Clear button. Info button
enables selection of different levels of information.
Reference tab displays documentation on the current command. This is very useful as the tester
can ensure that the parameters specified in the target and Value field are correct or not. Corrects
can be done if there is a mismatch.
Actions are commands that generally influence the state of the application like type this word,
click this link or logout. The execution of the current test stops if there is any error. Many
Actions can be called with the AndWait suffix, e.g. clickAndWait. This suffix tells Selenium
that the action will cause the browser to make a call to the server, and that Selenium should wait
for a new page to load.
Accessors examine the state of the application and store the results in variables, e.g. storeTitle.
They are also used to automatically generate Assertions.
Assertions verify that the application works as per the expectation. Selenium Assertions can be
used in 3 modes: assert, verify, and waitFor. Suppose an application page should display
List of projects title, verifyTitle command may be used. The test is aborted when an assert
fails. When a verify fails, the test will continue execution, logging the failure. waitFor
commands wait for some condition to become true. They will succeed immediately if the
condition is already true. However, they will fail and halt the test if the condition does not
become true within the current timeout setting.
open
click/clickAndWait
verifyTitle/assertTitle
verifyTextPresent
verifyElementPresent
verifyText
verifies expected text and its corresponding HTML tag are present
on the page.
verifyTable
waitForPageToLoad
waitForElementPresent
Once the recording is over, there is a need to modify some of the commands inserted commands.
For example, click command needs to be changed to clickAndWait to ensure that the test case
pauses until the new page is completely loaded. Otherwise, the test case will continue running
commands before the page has loaded all its UI elements. This will cause unexpected test case
failures.
Test case can be stopped for debugging purpose using the Toggle Breakpoint. Select Toggle
Breakpoint from the context menu to set a breakpoint at a particular command.
Screen shot shows the recording of a typical case to test the functionality of actiTime demo site.
After recording user actions, one more command verifyTextPresent has been inserted to test the
presence of the text in that particular page.
Test Suites
Two or more test cases can be grouped to form test suite. Follow the following steps for creating
automation framework.
1. Record the test cases and store in the folder. Name the folder as Scripts
2. Create a folder with name Results
3. Create an html file with name suite.html. The contents of the file will be like
<html>
<table>
<tr>
<td>Suite</td>
</tr>
<tr>
<td><a target="testFrame" href="Scripts/Task_OpenTaskLink.html">task</a></td>
</tr>
<tr>
<td><a target="testFrame" href="Scripts/User_Creation.html">task</a></td>
</tr>
4. Create a batch file with following contents. Name the file as run.bat
E:
java.exe -jar selenium-server.jar -htmlSuite "*firefox" "http://127.0.0.1:8080/"
"E:/Suite.html" E:/Results/result.html"
Ensure that java is installed, path is set and selenium-server.jar file is present in E drive.
5. Execute the batch file run.bat
6. The test cases will be executed automatically one by one and the results will be available
in the result.html file in Results folder. The contents of result.html looks like.
Automate the testing of any two modules of actiTime using Selenium RC.
SELENIUM-RC
Selenium-IDE does not directly support:
1. condition statements
2. iteration
3. logging and reporting of test results
4. error handling, particularly unexpected errors
5. database testing
6. test case grouping
7. re-execution of failed tests
8. test case dependency
9. screenshot capture of test failures
Selenium-RC allows the test automation developer to use a programming language for maximum
flexibility and extensibility in developing test logic. Selenium-RC is the solution for tests that
need more than simple browser actions and linear execution. Selenium-RC uses the full power of
programming languages to create more complex tests like reading and writing files, querying a
database, emailing test results.
Selenium-RC provides an API (Application Programming Interface) and library for each of its
supported languages: HTML, Java, C#, Perl, PHP, Python, and Ruby. This ability to use
Selenium-RC with a high level programming language to develop test cases also allows the
automated testing to be integrated with a projects automated build environment.
Although these tasks are not supported by Selenium directly, all of them can be achieved by
using programming techniques with a language-specific Selenium-RC client library. In the
Adding Some Spice to Your Tests section, youll find examples that demonstrate the advantages
of using a programming language for your tests.
Selenium-RC Components
The Selenium Server
Launches and kills browsers, interprets and runs the Selenese commands passed from the test
program.
Selenium Server receives Selenium commands from your test program, interprets them, and
reports back to your program the results of running those tests.
How it works?
1. The client/driver establishes a connection with the selenium-RC server.
2. Selenium-RC server launches a browser (or reuses an old one) with an URL that injects
SeleniumCores JavaScript into the browser-loaded web page.
3. The client-driver passes a Selenese command to the server.
4. The Server interprets the command and then triggers the corresponding JavaScript
execution to execute that command within the browser.
5. Selenium-Core instructs the browser to act on that first instruction, typically opening a
page of the AUT.
6. The browser receives the open request and asks for the websites content to the SeleniumRC server (set as the HTTP proxy for the browser to use).
7. Selenium-RC server communicates with the Web server asking for the page and once it
receives it, it sends the page to the browser masking the origin to look like the page comes
from the same server as Selenium-Core (this allows Selenium-Core to comply with the Same
Origin Policy).
8. The browser receives the web page and renders it in the frame/window reserved for it.
Reporting Results
Selenium-RC does not have its own mechanism for reporting results. Rather, it allows you to
build your reporting customized to your needs using features of your chosen programming
language.
Installation
1. Install the Selenium-RC Server.
The Selenium-RC server is simply a Java jar file (selenium-server.jar), which doesnt require any
special installation. Just downloading the zip file and extracting the server in the desired
directory is sufficient.
After downloading the Selenium-RC zip file from the downloads page, youll notice it has
several subfolders. These folders have all the components you need for using Selenium-RC with
the programming language of your choice.
Before starting any tests you must start the server. Go to the directory where Selenium-RCs
server is located and run the following from a command-line console.
This can be simplified by creating a batch or shell executable file (.bat on Windows and .sh on
Linux) containing the command above. Then make a shortcut to that executable on your desktop
and simply double-click the icon to start the server. For the server to run youll need Java
installed and the PATH environment variable correctly configured to run it from the console.
Right click on lib folder > Build Path > Configure build Path
Under Library tab click on Add External Jars to navigate to directory where jar files are saved.
Select the jar files which are to be added and click on Open button.
After having added jar files click on OK button.
Added libraries would appear in Package Explorer as following:
TestNG
Eclipse has direct support for these via TestNG plug-in. TestNG is a testing framework designed
to simply a broad range of testing needs, from unit testing to integration testing.
Steps to follow
Write the business logic of your test and insert TestNG annotations in your code.
A TestNG test can be configured by @BeforeClass and @AfterClass annotations which
allows to perform some Java logic before and after a certain point, these points being either of
the items listed above.
Annotations
Here is a quick overview of the annotations available in TestNG along with their attributes.
@ BeforeTest: The annotated method will be run before any test method belonging to the
classes inside the <test> tag is run.
@ AfterTest: The annotated method will be run after all the test methods belonging to the
classes inside the <test> tag have run.
An Example
import com.thoughtworks.selenium.*;
import org.testng.annotations.*;
public class SimpleTest {
private Selenium selenium;
@BeforeClass
public void setup()
{
selenium=new DefaultSelenium("localhost",4444,"*firefox","http://umesh-pc/login.do");
selenium.start();
}
@Test
public void login(){
selenium.open("/login.do");
selenium.type("username", "admin");
selenium.type("pwd", "manager");
selenium.click("loginButton");
selenium.waitForPageToLoad("30000");
selenium.click("logoutBtn");
selenium.waitForPageToLoad("30000");
}
@AfterClass
public void tearDown()
{
selenium.stop();
}
}
Running TestNG
TestNG can be invoked using Eclipse
SAF Architecture
SAF uses a hybrid test automation approach. It has been built on Selenium RC. Components of
SAF are:
Test Suite Configuration
Test Scripts / Test Suite
Execution Engine
Reporting Engine
Recovery & Exception Handling Engine
SAF Layers
Core of SAF framework is the Execution Engine. The engine consists of 6 main components:
1. Build.xml: starts the Selenium server and kick start script execution.
2. SAF : is invoked by Build.xml which in turn calls XlateExcelToHtml and XlateHtmlToJava
3. XlateExcelToHtml: converts the test cases in the excel sheet to HTML scripts
4. XlateHtmlToJava: converts the HTML scripts to Java.
5. LogUtil.java (Error handler): When there is an exception it is recorded in Error. log
6. log4jConfig.properties : This file has the Config and display details for Error.log
SAF takes the input from user in form of Config, Test Cases and Test Suite. The execution
engine internally invokes Build.xml to start the Selenium server and kick-start script execution.
Error handler is invoked in cases of exception and the log file gets generated. At the end of the
execution fairly standard and simple reports in html format are provided to the user
1. Unzip SAF.zip file and install SAF.exe file into your local disk.
2. Copy \\jars\tools.jar file to C:\Program Files\Java\jre1.6*\lib\tools.jar
3. Run \\jars\ISAF.bat file to set environment variables / CLASSPATH as appropriate. PS:
User needs to set JRE & ANT paths in the environment variables manually if the settings
should remain even after restarting user machine. To confirm settings are reflected
appropriately, go to the command prompt and give java version and ant version.
4. How to Set CLASSPATH and PATH for Java and Ant?
Steps:
1. Right click on "My Computer"
2. Select "Properties" >> Opens "System Properties Dialog"
3. Select "Advanced" Tab
4.
\SAF5.*\
Content
build.xml
\config
\jars
README.txt
\Testcases
RunTestSuite.bat
\SAF5.*\jars\
ant.jar log4j-1.3alpha-7.jar
ant-contrib-1.0b3.jar
selenium-java-client-driver.jar
selenium-server.jar
suite.jar
testng-5.9-jdk15.jar
tools.jar
\SAF5.*\Testcases\
SAF_Template5.3.xls
SAF_TestDataTemplate5.3.xls
Sample Test cases
\SAF5.*\config\
log4jConfig.properties
MasterTestSuite.properties
MasterTestSuite.txt
suite.xml
encryp_ED.txt
encryp_hrs.txt
encryp_SD.txt
*anything* (like visit multiple sites and do file uploads) in this mode that is otherwise
prevented in
"normal" *firefox and *explorer modes
*iexplore: Invokes the web application on an IE browser. This option can be used
when the application uses HTTP protocol.
*chrome: invokes the web application on a Fire fox browser. chrome is a special
mode for running the browser that basically has *no* security turned on... JavaScript
in the Selenium engine can do *anything* (like visit multiple sites and do file uploads)
in this mode that is otherwise prevented in "normal" *firefox and *explorer modes
*firefox: invokes the web application on a Fire fox browser
4.
5. Results/Screen shot path : specify the path where the screenshot have to be stored
6. Please select Mode of Test Suite Execution: (Sequential OR Concurrent execution) default is Sequential
Sequential: default is Sequential, executes all the scripts in a sequential manner
Concurrent: executes the scripts in different browsers parallel, currently it executes
on 3 browsers in parallel.
7. Please select from the options:
On the fly Execution: is the default selection, Executes the scripts from the excel
file. This option is available only for Sequential Test Case Execution Mode
Generate Script: Converts the entire excel scripts to Java file
Generate & Execute script: Converts the excel scripts to java file and then
executes the java file
Generate script for Selected test: Generates java file for those test between
Generate Java Code from and Generate Java Code to block
Generate & Execute script for selected tests: Generates and Executes.java file
for those test between Generate Java Code from and Generate Java Code to
block
Execute user updated java file:
Using this option, users with little Java
programming skills can now modify & execute generated Java code in any editor and
execute from with in the SAF command prompt, This option will execute the newly
Testing by pasting internal URL directly into the browser address bar without logging in and the
internal page should not be displayed.
Password cannot be copied.
Testing the application by enabling and disabling cookies (Temporarily and permanent)
Web directories should not be accessible unless given the download option.
The primary reason for testing the security of a web is to identify potential vulnerabilities and
subsequently repair them.
Following are some of the test case scenarios which can be executed on web site.
Sl No
Scenario
Description / Steps
1. Check password confirms and required length with combination of lower and upper case
and special keywords
2. Check the password does not belong to dictionary
1. Check the error message displayed does not tell which part of authentication credentials
are incorrect
2. Check the status failure or success after few seconds once the user enter the credentials
1. Check that change password screen have old password field mandatory
2. Check to ensure that password field does not have Auto complete feature "ON"
3. Check the new password is not displayed in screen but is sent to user mail id
4. Check to see that account gets locked if user tried to enter old password incorrect for
more than 3 attempts
Check that the application logs off or session is expired after some time
(All application pages)
Session Hijacking
Perform security testing of actiTIME website using few scenarios mentioned above.
=========================================================