Friday, August 19, 2011

Mobile: Steps to perform video recording for android device

ScreenCasting :  Android Device - Samsung Galaxy S on Windows 7.

Download and Install JDK 6 or above, from http://www.java.com/en/download/chrome.jsp?locale=en
Download and Install JRE 6 or high, http://www.oracle.com/technetwork/java/javase/downloads/index.html
Download and Install Android SDK, from http://developer.android.com/sdk/index.html
(Depending on your OS, 32Bit or 64Bit)
Download and Install Droid Explorer from, http://de.codeplex.com/releases/view/66510
(Depending on your OS, 32Bit or 64Bit)
Download and Install Jing, from http://www.techsmith.com/jing/

Now, Connect your Android device with PC via USB.
Launch Droid Explorer, which will automatically detect your Android Device.
Click on Green Android icon of Droid Explorer.





Happy to iGUIDE :-)

Wednesday, August 10, 2011

How to Record Android screen on any OS ?


Steps:

   1.  Download Android SDK, from  http://developer.android.com/sdk/index.html

  2.  Download "droidAtScreen-0.3" from  http://blog.ribomation.com/2010/01/droidscreen/

  3.  Follow further steps from the Video,

       

Thursday, June 2, 2011

Potential Risks

The test manager is also responsible for identification of  Potential Risks that might impact testing. Some of the primary testing risks include:

Not Enough Training/Lack of Test Competency
The majority of IT personnel have not been formally trained in testing, and only about half of full-time independent testing personnel have been trained in testing techniques. This causes a great deal of misunderstanding and misapplication of testing techniques.

Us versus Them Mentality
This common problem arises when developers and testers are on opposite sides of the testing issue. Each feels that it is “out to get” the other. Often, the political infighting takes up energy, sidetracks the project, and accomplishes little except to negatively impact relationships.

Lack of Test Tools
IT management may have the attitude that test tools are a luxury. Manual testing can be an overwhelming task. Although more than just tools are needed, trying to test effectively without tools is like trying to dig a trench with a spoon.

Lack of Management Understanding and Support of Testing
Support for testing must come from the top, otherwise staff will not take the job seriously and testers’ morale will suffer. Management support goes beyond financial provisions; management must also make the tough calls to deliver the software on time with defects or take a little longer and do the job right.

Lack of Customer and User Involvement
Users and customers may be shut out of the testing process, or perhaps they don’t want to be involved. Users and customers play one of the most critical roles in testing; making sure the software works from a business perspective.

Not Enough Schedule or Budget for Testing
This is a common complaint. The challenge is to prioritize the plan to test the right things in the given time.

Over Reliance on Independent Testers
Sometimes called the “throw it over the wall” syndrome, developers know that independent testers will check their work, so they focus on coding and let the testers do the testing. Unfortunately, this results in higher defect levels and longer testing times.

Rapid Change
 In some technologies, especially Rapid Application Development (RAD), the software is created and modified faster than the testers can test it. This highlights the need for automation, but also for version and release management.

Testers are in A Lose-Lose Situation
On the one hand, if the testers report too many defects, they are blamed for delaying the project. Conversely, if the testers do not find the critical defects, they are blamed for poor quality.

Having to Say “No”
Having to say, “No, the software is not ready for production,” is the single toughest dilemma for testers. Nobody on the project likes to hear that and frequently testers succumb to the pressures of schedule and cost.

Test Environment
The work environment is not conducive to effective and efficient testing.

New technology
The new focus on client/server, Intranet, and Internet applications has introduced even more risk to the test process. These multi-tiered systems are more complex than traditional mainframe systems, and therefore have a higher level of risk associated with their testing and implementation. Security, performance, availability, complex component integration, and a team new to the technology are just a few of these new risk factors.

New developmental processes
Along with these new delivery platforms come new methods for software development. Project teams have moved away from traditional “waterfall” methods, and follow a much more iterative approach to development and delivery. An integral part of this iterative approach is that testing activities are more integrated across the development cycle than before. Traditional system testing is not just conducted at the end of development, but may be conducted multiple times throughout the project for major components, and then completed once all development is complete.

Wednesday, April 6, 2011

UNIX Commands


Syntax :     $ CommandName <-Options> <Arguments> 

Command Name :  Operation to be performed Lower Case. 

<-Options> : Controls O/p of Command  as well as operation


<Arguments> : Data processed to command


Options always start with hyphen (-)

1] Command Name: uname      => Displays the OS name

   
$ uname

Displays the OS name

$ uname –v

Displays release date of OS

$ uname –r

Displays version of the OS


2] Command Name: who   => Displays all the logged users of UNIX.


$ who

Displays all logged in users, login name & time of login.

$ whoami

user 2

Displays the user login name


3] finger: List all the logged user in details

$ finger 

Details of all the users are listed like, login name, actual name, phone, emailed, Office.

4] pwd: (Print working directory): Prints the current working directory path.

$ pwd

   /home/demo/batch2/class3

Monday, March 28, 2011

SDLC And STLC

What is Software Development Life Cycle?

The Software Development Life Cycle is a step-by-step process involved in the development of a software product. It is also denoted as Software Development process in certain parts of the world. The whole process is generally classified into a set of steps and a specific operation will be carried out in each of the steps.

Classification
The basic classification of the whole process is as follows

  • Planning
  • Analysis
  • Design
  • Development
  • Implementation
  • Testing
  • Deployment
  • Maintenance
Each of the steps of the process has its own importance and plays a significant part in the product development. The description of each of the steps can give a better understanding.

Planning
This is the first and foremost stage in the development and one of the most important stages. The basic motive is to plan the total project and to estimate the merits and demerits of the project. The Planning phase includes the definition of the intended system, development of the project plan, and Parallel management of the plan throughout the proceedings of the development.

A good and matured plan can create a very good initiative and can positively affect the complete project.

Analysis
The main aim of the analysis phase is to perform statistics and requirements gathering. Based on the analysis of the project and due to the influence of the results of the planning phase, the requirements for the project are decided and gathered.

Once the requirements for the project are gathered, they are prioritized and made ready for further use. The decisions taken in the analysis phase are out and out due to the requirements analysis. Proceedings after the current phase are defined.

Design
Once the analysis is over, the design phase begins. The aim is to create the architecture of the total system. This is one of the important stages of the process and serves to be a benchmark stage since the errors performed until this stage and during this stage can be cleared here.

Most of the developers have the habit of developing a prototype of the entire software and represent the software as a miniature model. The flaws, both technical and design, can be found and removed and the entire process can be redesigned.

Development and Implementation
The development and implementation phase is the most important phase since it is the phase where the main part of the project is done. The basic works include the design of the basic technical architecture and the maintenance of the database records and programs related to the development process.

One of the main scenarios is the implementation of the prototype model into a full-fledged working environment, which is the final product or software.

Testing
The testing phase is one of the final stages of the development process and this is the phase where the final adjustments are made before presenting the completely developed software to the end-user.

In general, the testers encounter the problem of removing the logical errors and bugs. The test conditions which are decided in the analysis phase are applied to the system and if the output obtained is equal to the intended output, it means that the software is ready to be provided to the user.

Maintenance
The toughest job is encountered in the maintenance phase which normally accounts for the highest amount of money. The maintenance team is decided such that they monitor on the change in organization of the software and report to the developers, in case a need arises.





Type of Models:


Waterfall Model


Spiral Model


V Model


Prototype Model


Agile Model
                             
                                                          ***


STLC



Learn-SQL

For More Info : Learn - SQL (Source: www.w3schools.com)


For Quick Reference

Different SQL JOINs

Before we continue with examples, we will list the types of JOIN you can use, and the differences between them.
  • JOIN: Return rows when there is at least one match in both tables
  • LEFT JOIN: Return all rows from the left table, even if there are no matches in the right table
  • RIGHT JOIN: Return all rows from the right table, even if there are no matches in the left table
  • FULL JOIN: Return rows when there is a match in one of the tables

SQL INNER JOIN Example

The "Persons" table:
P_Id LastName FirstName Address City
1 Hansen Ola Timoteivn 10 Sandnes
2 Svendson Tove Borgvn 23 Sandnes
3 Pettersen Kari Storgt 20 Stavanger

The "Orders" table:
O_Id OrderNo P_Id
1 77895 3
2 44678 3
3 22456 1
4 24562 1
5 34764 15

Now we want to list all the persons with any orders.
We use the following SELECT statement:

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
INNER JOIN Orders
ON Persons.P_Id=Orders.P_Id
ORDER BY Persons.LastName

The result-set will look like this:
LastName FirstName OrderNo
Hansen Ola 22456
Hansen Ola 24562
Pettersen Kari 77895
Pettersen Kari 44678
The INNER JOIN keyword return rows when there is at least one match in both tables. If there are rows in "Persons" that do not have matches in "Orders", those rows will NOT be listed.

SQL LEFT JOIN Keyword

The LEFT JOIN keyword returns all rows from the left table (table_name1), even if there are no matches in the right table (table_name2).

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
LEFT JOIN Orders
ON Persons.P_Id=Orders.P_Id
ORDER BY Persons.LastName


The result-set will look like this:
LastName FirstName OrderNo
Hansen Ola 22456
Hansen Ola 24562
Pettersen Kari 77895
Pettersen Kari 44678
Svendson Tove

SQL RIGHT JOIN Keyword

The RIGHT JOIN keyword returns all the rows from the right table (table_name2), even if there are no matches in the left table (table_name1).

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
RIGHT JOIN Orders
ON Persons.P_Id=Orders.P_Id
ORDER BY Persons.LastName


The result-set will look like this:
LastName FirstName OrderNo
Hansen Ola 22456
Hansen Ola 24562
Pettersen Kari 77895
Pettersen Kari 44678
34764

SQL FULL JOIN Keyword

The FULL JOIN keyword return rows when there is a match in one of the tables.

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
FULL JOIN Orders
ON Persons.P_Id=Orders.P_Id
ORDER BY Persons.LastName


The result-set will look like this:
LastName FirstName OrderNo
Hansen Ola 22456
Hansen Ola 24562
Pettersen Kari 77895
Pettersen Kari 44678
Svendson Tove
34764


SQL Statement       Syntax
AND / ORSELECT column_name(s)
FROM table_name
WHERE condition
AND|OR condition
ALTER TABLEALTER TABLE table_name
ADD column_name datatype
or
ALTER TABLE table_name
DROP COLUMN column_name
AS (alias)SELECT column_name AS column_alias
FROM table_name
or
SELECT column_name
FROM table_name  AS table_alias
BETWEENSELECT column_name(s)
FROM table_name
WHERE column_name
BETWEEN value1 AND value2
CREATE DATABASECREATE DATABASE database_name
CREATE TABLECREATE TABLE table_name
(
column_name1 data_type,
column_name2 data_type,
column_name2 data_type,
...
)
CREATE INDEXCREATE INDEX index_name
ON table_name (column_name)
or
CREATE UNIQUE INDEX index_name
ON table_name (column_name)
CREATE VIEWCREATE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition
DELETEDELETE FROM table_name
WHERE some_column=some_value
or
DELETE FROM table_name
(Note: Deletes the entire table!!)
DELETE * FROM table_name
(Note: Deletes the entire table!!)
DROP DATABASEDROP DATABASE database_name
DROP INDEXDROP INDEX table_name.index_name (SQL Server)
DROP INDEX index_name ON table_name (MS Access)
DROP INDEX index_name (DB2/Oracle)
ALTER TABLE table_name
DROP INDEX index_name (MySQL)
DROP TABLEDROP TABLE table_name
GROUP BYSELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name
HAVINGSELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name
HAVING aggregate_function(column_name) operator value
INSELECT column_name(s)
FROM table_name
WHERE column_name
IN (value1,value2,..)
INSERT INTOINSERT INTO table_name
VALUES (value1, value2, value3,....)
or
INSERT INTO table_name
(column1, column2, column3,...)
VALUES (value1, value2, value3,....)
INNER JOINSELECT column_name(s)
FROM table_name1
INNER JOIN table_name2
ON table_name1.column_name=table_name2.column_name
LEFT JOINSELECT column_name(s)
FROM table_name1
LEFT JOIN table_name2
ON table_name1.column_name=table_name2.column_name
RIGHT JOINSELECT column_name(s)
FROM table_name1
RIGHT JOIN table_name2
ON table_name1.column_name=table_name2.column_name
FULL JOINSELECT column_name(s)
FROM table_name1
FULL JOIN table_name2
ON table_name1.column_name=table_name2.column_name
LIKESELECT column_name(s)
FROM table_name
WHERE column_name LIKE pattern
ORDER BYSELECT column_name(s)
FROM table_name
ORDER BY column_name [ASC|DESC]
SELECTSELECT column_name(s)
FROM table_name
SELECT *SELECT *
FROM table_name
SELECT DISTINCTSELECT DISTINCT column_name(s)
FROM table_name
SELECT INTOSELECT *
INTO new_table_name [IN externaldatabase]
FROM old_table_name
or
SELECT column_name(s)
INTO new_table_name [IN externaldatabase]
FROM old_table_name
SELECT TOPSELECT TOP number|percent column_name(s)
FROM table_name
TRUNCATE TABLETRUNCATE TABLE table_name
UNIONSELECT column_name(s) FROM table_name1
UNION
SELECT column_name(s) FROM table_name2
UNION ALLSELECT column_name(s) FROM table_name1
UNION ALL
SELECT column_name(s) FROM table_name2
UPDATEUPDATE table_name
SET column1=value, column2=value,...
WHERE some_column=some_value
WHERESELECT column_name(s)
FROM table_name
WHERE column_name operator value

Saturday, March 26, 2011

DEFECT REPORTING



DefectID: BugID_13

ReleaseName: Dolphin

BuildID: B03

ModuleName: Sent Item

Status: Open/ Assigned/ fixed/ Re-open/ Closed/ Duplicate

Severity: Blocker/ Show Stopper/  Critical/ Major/ Minor

Priority: High-P1 /  Medium-P2 / Low-P3

TestData: UserName= abc123, Password=xyz123

TestEnvironment: winXp, IE 7.0

TestCaseName: Yaho_SentItem_MailList

ReportedBy: Mr.ABC (Tester)

BriefDescription: Sent mails are not there in Sent Item page

DetailDescription: Following are the Steps to reproduce the defect-
             
1.      Open the browser.
2.      Login with valid username and password
3.      Click on “Compose” link
4.      Enter valid data into all the fields and click on send button
5.      Click on “sent item” link

Expected Result:  Sent mail should be listed in sent item page.

Actual Result:  Sent mail is not listed in sent items page.

Screen shot: 

BUG Tracking By Tool (BUGZILLA)

Effective bug reports are the most likely to be fixed. These guidelines explain how to write such reports.

Principles

  • Be precise
  • Be clear - explain it so others can reproduce the bug
  • One bug per report
  • No bug is too trivial to report - small bugs may hide big bugs
  • Clearly separate fact from speculation

Preliminaries

  1. Reproduce your bug using a recent build of the software, to see whether it has already been fixed.
  2. Search Bugzilla, to see whether your bug has already been reported.

Reporting a New Bug

If you have reproduced the bug in a recent build and no-one else appears to have reported it, then:
  1. Choose "Enter a new bug"
  2. Select the product in which you've found the bug
  3. Fill out the form. Here is some help understanding it:
Component: In which sub-part of the software does it exist?
This field is required. Click the word "Component" to see a description of each component. If none seems appropriate, look for a "General" component.
OS: On which operating system (OS) did you find it? (e.g. Linux, Windows XP, Mac OS X.)
If you know the bug happens on more than one type of operating system, choose "All". If your OS isn't listed, choose Other.
Summary: How would you describe the bug, in approximately 60 or fewer characters?
A good summary should quickly and uniquely identify a bug report. It should explain the problem, not your suggested solution.

  • Good: "Cancelling a File Copy dialog crashes File Manager"
  • Bad: "Software crashes"
  • Bad: "Browser should work with my web site"
Description: The details of your problem report, including:
Overview: More detailed restatement of summary.
Drag-selecting any page crashes Mac builds in the NSGetFactory function.
Steps to Reproduce: Minimized, easy-to-follow steps that will trigger the bug. Include any special setup steps.
1) View any web page. (I used the default sample page, 
resource:/res/samples/test0.html)

2) Drag-select the page. (Specifically, while holding down 
the mouse button, drag the mouse pointer downwards from any 
point in the browser's content region to the bottom of the 
browser's content region.)
Actual Results: What the application did after performing the above steps.
The application crashed.
Expected Results: What the application should have done, were the bug not present.
The window should scroll downwards. Scrolled content should be selected. 
(Or, at least, the application should not crash.)
Build Date & Platform: Date and platform of the build in which you first encountered the bug.
Build 2006-08-10 on Mac OS 10.4.3
Additional Builds and Platforms: Whether or not the bug takes place on other platforms (or browsers, if applicable).
Doesn't Occur On Build 2006-08-10 on Windows XP Home (Service Pack 2)
Additional Information: Any other useful information.

For crashing bugs:
  • Windows: Note the type of the crash, and the module that the application crashed in (e.g. access violation in apprunner.exe).
  • Mac OS X: Attach the "Crash Reporter" log that appears upon crash. Only include the section directly below the crashing thread, usually titled "Thread 0 Crashed". Please do not paste the entire log!
Double-check your report for errors and omissions, then press "Commit". Your bug report will now be in the Bugzilla database.