Wednesday, May 23, 2012

Software Testing Risks

The 10 top software testing risks are addressed in terms of articulating their full impact to the software testing process.
  1. lack of staff availability
  2. lack of staff knowledge.
  3. lack of test environment availability
  4. lack of test environment stability
  5. lack of test coverage across product scope
  6. lack of test depth across conditions
  7. lack of realistic schedule estimation
  8. schedule mismangement
  9. Defect mismanagement
  10. lack of testing progress

Definations- Quality Related

Here, some of the definations related to Quality.
  1. Quality : The totality of features and characterstics of a product or service that bear on its ability to satisfy stated or implied needs.
  2. Quality Audit : A systematic and independant examination to determine whether quality activity and related results comply with planned arrangments. The audit also determine whether these arrangements are implemented effectively and are suitable to achieve objectives.
  3. Quality Manual : The top level document defining the quality system.
  4. Quality Plan : A document setting out the specific quality practices, resources and sequence of activities relavent to a particular product service, contract or a project.
  5. Quality Policy : The overall intentions and direction of an organization regarding quality as formally expressed by top managment.
  6. Quality Records - written records that are retained in accordance with requirements of ISO 9001.
  7. Quality System : The organizational structure responsibilities, procedures, process and resurces for implementing quality management.

Reasons - Why we should test software

Folks,

why we need to test the software. here are the reasons.....

Reasons for test software
  1. To find defects and reduce risk of software failure
  2. To ensure that it meets user requirements
  3. To ensure that it is fit for use
  4. To reduce cost of quality by delivering defect free product
  5. To achieve customer satisfaction
  6. To imporve continously testing process
  7. To determine state of software

About Testing Documents and Definetion

@Readers,

Here, I have given some common testing definetion about testing, which usually we need to refer most of the time in hurry when go for the interview. HAHAHAHAHA.......

hope this will helpful to me as well you guys also............

Following are the testing documents.
  1. Test Policy - Comapany level : A high level document describing the principle approach and major objectives of the organization regarding testing.
  2. Test Strategy - Company level : The objective of testing is to reduce the risks inherent in computer system. The strategy must address the risks and present a process that can reduce those risk or high level description of the test levels to be performed and the testing within those levels for an organization or programme.
  3. Test Methodology - Project level : It incorporate both testing strategy and testing tactics. It means by which the test strategy is achieved.
  4. Test Plan - Project level : A document describing the scope approach,resources and schedule of intended test activities. It identifies amongest others test items, the features to be tested, testing task, who will do each task, degree of tester independence, test environment, test design technique and entry and exit criteria to be used and the rationale for their choice and any risks requiring contingency planning.
  5. Test Case- Project Level : A testcase is a set of test input, execution conditions (pre/post conditions) and expected results developed for a particular test objective.
  6. Test Procedure : A document specifying a sequence of actions for the execution of test. Also knwon as test script or manual test script.
  7. Defect Report -Project Level : A document reporting on any flaw in component or system that can cause the component / system to fail to perform its required function. (IEEE 829)
  8. Test summary report - Project Level : A document summarizing testing activities and results. It also contains an evaluation of the corresponding test items against exit criteria. (IEEE 829)
  9. Test objective : A test objective is what the test is to be validate. eg. performance, functionality etc.
  10. Verification : A technique to ensure the system complies with organization standards and processess, relying on review and non executable methods.
  11. Validation : Ensures that the system operates according to the plan by executing the system functions through a series of tests that can be observed and evaluated
  12. Test Approach : Approach to testing, how it will ensure adequate testing which is detailed enough for test task estimation and to use testing technique
  13. Testing : Software testing is process used to identify the correctness, completeness and quality of developed computer software
  14. Test case adequacy criteria: The criteria for deciding if the testcase selected are adequate and appropriate
  15. Test suspension and resumption criteria: when test should be suspended and when they can be resumed
  16. Test stop criteria The criteria for deciding when testing should be stopped

Tuesday, May 15, 2012

Difference between DBMS/RDBMS and Access/SQL server

DBMS/RDBMS
  1. RDBMS= DBMS + referencial integrity- RDBMS follows 12 rules of CODD
  2. In DBMS relation is between two files, while in RDBMS relation is between 2 tables.
  3. DBMS doesnt support client server architecture , while RDBMS supports
  4. DBMS doesnt follow Normalization, while RDBMS follows
  5. DBMS consist of files, records , while RDBMS consist of relations, tables, tuples
  6. DBMS -allow one user access at a time, while RDBMS allow multiple user simulations
Access/ SQL Server
  1. Access follows file sharing architecture and network trafic is high, while SQL server follows client server architecture and network trafic is low- scalability and reliability
  2. Access- is not relieable . It directly interact with access file, if in middle transaction fails then not recovered, while SQL server is reliable, transaction is recovered
  3. When it comes to cost and support access is better than SQL. In case of SQL server you have to pay for per client licence, but for access runtime is free.
  4. When your application has to cater to huge load demand, highly transactional environment and high concerrency then its better to use SQL.

Difference between store procedure and Function

Function
  1. Should return at least one output parameter, it can return more than one parameter using OUT argument
  2. Parsed and compiled at runtime
  3. Cannot affect the state of database
  4. Can be invoked from SQL statement eg. SELECT fnname()
  5. functions are mainly used to compute values
Procedure
  1. Doesnot return value but can return value (by OUT parameter)
  2. Stored as Psedo-code in database i.e complied form
  3. Can affect the state of database using committ etc
  4. Cannot be invoked from SQL statement ex. SELECT
  5. procedures are mainly used to process the task

About SQL Injection

SQL injection is the means by which a user can pass malicious code to a database by injecting their own code into your SQL statement by passing part of an SQL statement to your query via an online form.

SQL injection is a technique for explaiting web applications that use client supplied data in SQL queries without stripping potentially harmful character first SQL injection occurs when an attacker is able to insert a series of SQL statements into query by manipulating data input into an application.

Example
  1. Enter first name kur'n and lastname Daud
so, Select id,firstname,lastname from author where firstname='kur'n' and lastname='daud'
it give error

2. Enter username ';drop table usertable
;colon terminate first query and drop table

3. username admin'--
4. username ór 1=1--
5. username únion select 1;'functional user and 'same password'',1--
here application believes that constant row that the attacker specified was part of the record set retrived from database.

SQL Injection Prevention
  1. using store procedure - use parameterized queries and SP
  2. protect SQL syntax- never allow client supplied data to modoify syntax of SQL statement and All SQL statements required by the application should be in SP and kept on database server
  3. Protect from your application level - protect it from application from by remove all char that could attempt any SQL injection
  4. combination approach- first you need to make sure that your SQL syntax is secure. second make sure that your application protect from any SQL character attempts. Finally make use of SP to update your database, and make sure that you define any restriction from your DBMS such as oracle and SQL server.

Database Testing Checklist

Folks,

Keep following points in mind when doing database testing. hope this will helpfull.
  1. Field size validation
  2. Check constraints
  3. Indexes are done or not (for performance related issues)
  4. Store procedure
  5. Field size defined in the application is matching with that in database
  6. Events like insert, update, delete
  7. Data integrity, data validity and data manipulation and update

Tuesday, May 8, 2012

Difference between Delete and Truncate and count

Difference between Delete and Truncate
if we use truncate table then we can reuse storage. all memory is free for other operation not wait for any cleanup operation in truncate while in delete the memory is not available for further use.

Difference between count() and count(*)
In count(*) include duplicate null values while in count() not include null value

Wednesday, May 2, 2012

QTP-How to create and delete folder on path

vb script create 5 folders test1 test2 test3 test4 test5

set fso=createobject("scripting.filesystemobject")
for i=1 to 5
fso.createfolder "C:\test" &i
next

vb script to delete folder test1,test2, test3,test4 and test5
dim vfso
set vfso=createobject("scripting.filesystemobject")
for i=1 to 5
vfso.deletefolder "C:\test" &i
next