Showing posts with label regression. Show all posts
Showing posts with label regression. Show all posts

Friday, March 14, 2008

FAQ - Manual ( 101 to 111 )

101. What is Test stub?

A dummy software component or object used to simulate (duplicate) the behavior of a real component

102. BUG LIFE CYCLE

A Tester finds a new bug / defect, so using a defect tracking tool logs it as ‘NEW

  1. Its status is ‘OPEN’ and assigns to the respective development team (By Team Lead).
  2. The developer works on the bug, fixes it and he changes the status to ‘VERIFIED
  3. The QA after verifying, change the status to ‘FIXED’.
  4. If the bug is ‘FIXED’ then we will CLOSE it

If the defect or bug is not fixed he re-assigns the bug / defect back to the development team for ‘RE-FIXING

103. What is Requirements Traceability Matrix (RTM)

It is a Root Document which keeps track of the Entire Requirements and helps in identifying the Testing Status. It’s a document that traces User requirements from analysis through implementations. How to trace the document? Which is our module? It’s the Link between requirements and Test cases.

RTM can be used as a completeness check to verify that all the requirements are present or that there is no unnecessary / extra features and as a maintenance guide to new personnel. It’s a Linking b/n Test Case and to Requirements

In our company we followed two worksheets in the RTM template.

1 Requirements Worksheet

Links Requirements to Application Design Specifications and User Acceptance Test Specifications (Here in table, Requirements are in COLOMN and Application design specs and Acceptance Test Case (UAT) are in ROW

2 Design Worksheet

Links Application Design Specifications to Components, System Test Specifications, Integration Test Specifications and Unit test Specifications ( Here, in table, Application Design Specs is in COLOMN and Components, System Test Specifications, Integration Test Specifications and Unit test Specifications are in ROW

104. What is Functionality Testing?

Testing the functionality of the individual objects contained in the module in accordance to the customer requirement is Functionality Testing. For Example,

* Screen Functionality (alignment of objects, color, font, spelling & grammar)

* Referential Integrity Checks (data save, field length, max and min values for numeric fields, not null)

* Field Dependencies (sensible error message, mandatory fields, command button, multiple validations)

105. When are Regression Testing done?

Regression testing is the process of testing changes in computer programs to make sure that the older programming still works with the new changes.

Simply to say, regression testing is performed on the following 3 areas,

* New Enhancement added to the application

* Modification or updation of any source code

* Retesting done after a bug is found and fixed

These should not impact the existing one.

106. Types of HTTP Error Codes

Information Codes

Error #

Info

Error Code

100

Info

Continue

101

Info

Switching Protocols

Success Codes

Error #

Info

Error Code

200

Info

OK

201

Info

Created

202

Info

Accepted

203

Info

Non-Authoritative Information

204

Info

No Content

205

Info

Reset Content

206

Info

Partial Content

Redirection Codes

Error #

Info

Error Code

300

Info

Multiple Choices

301

Info

Moved Permanently

302

Info

Found

303

Info

See Other

304

Info

Not Modified

305

Info

Use Proxy

307

Info

Temporary Redirect


Client Error Codes

Error #

Info

Error Code

400

Info

Bad Request

401

Info

Unauthorized

402

Info

Payment Required

403

Info

Forbidden

404

Info

Not Found

405

Info

Method Not Allowed

406

Info

Not Acceptable

407

Info

Proxy Authentication Required

408

Info

Request Timeout

409

Info

Conflict

410

Info

Gone

411

Info

Length Required

412

Info

Precondition Failed

413

Info

Request Entity Too Large

414

Info

Request-URI Too Large

415

Info

Unsupported Media Type

416

Info

Requested Range Not Satisfiable

417

Info

Expectation Failed


Server Error Codes

Error #

Info

Error Code

500

Info

Internal Server Error

501

Info

Not Implemented

502

Info

Bad Gateway

503

Info

Service Unavailable

504

Info

Gateway Timeout

505

Info

HTTP Version not supported

107. What type of testing is carried out to find memory- leakages? Give me a sample example?

Through Volume testing it is possible. i.e., An application tries to retrieve large amount of data that require large temporary buffer area. If the data exceed the buffer area the situation of memory leakage will occur and query will fail without returning any result as sorting didn’t got finished as buffer exceeds the limit.
We need to know the memory size before the test execution and after test execution by using memory related API functions or MFC functions.

Volume testing is testing the application with large volumes of data, or the production data. While testing a banking application, we have tested it with the accounts created by us, a sample of 300 accounts. The search option with customer number was working fine with less response time, but when we tested the same search option with large volume of data (2 lakh accounts), the search response time is 20 seconds, which is not at all acceptable. We have to test the application with large volumes of data to find the performance related issues.

108. What errors can occur when the page loads?

404 File Not Found (Server cannot find the file you requested. Refreshing the page (F5) should resolve this problem, although continued error messages may mean the page is no longer available, that there is considerable internet congestion (in which case the user should try again later)

500 Internal Error (Couldn't retrieve the HTML document because of server-configuration problems.)

502 Runtime Error - This error are caused if you have java scripts in your page and it is not working
and there are few to mention

403 (Forbidden/access denied),

401 (Unauthorized),

408 request timed out, file contains no data, script error, host unavailable


109. What is the difference in testing a secured site 'https' & a non secured site 'http'?

HTTP is Hyper Text Transport Protocol and is transmitted over the wire via PORT 80(TCP). You normally use HTTP when you are browsing the web, it is not secure, so someone can eavesdrop on the conversation between your computer and the web server. HTTPS (Hypertext Transfer Protocol over Secure Socket Layer or HTTP over SSL) is a Web protocol developed by Netscape and built into its browser that encrypts and decrypts user page requests as well as the pages that are returned by the Web server. HTTPS is really just the use of Netscape's Secure Socket Layer (SSL) as a sub layer under its regular HTTP application layering. (HTTPS uses port 443 instead of HTTP port 80 in its interactions with the lower layer, TCP/IP.) SSL uses a 40-bit key size for the RC4 stream encryption algorithm, new-age browsers use 128-bit key size which is more secure than the former, it is considered an adequate degree of encryption for commercial exchange. HTTPS is normally used in login pages, shopping/commercial sites.

110. What is Usability testing in web testing?

Designers should always remember that the experience of the user in their website must be as pleasant as possible. How the user interacts with the website is very important. There may be cases when the user is someone very familiar with website browsing but not necessarily a testing expert. There are standards and guidelines for tests for usability. However, designers and/or project managers should not rely on them too much since complying with these standards doesn’t necessarily ensure that the site will meet the needs of the users, their tasks and their work environments. Design guidelines must be set and they must be measurable so that they can be easily incorporated into the tests.

111. Major negative test cases to break the sign up page


1) See the limit of username field. I mean the data type of this field in DB and the field size. Try adding more characters to this field than the field size limit. See how application respond to this.

2) Repeat above case for number fields. Insert number beyond the field storage capacity. This is typically a boundary test.

3) For username field try adding numbers and special characters in various combinations. (Characters like !@#$%^&*()_+}{”:?><,./;’[]). If not allowed specific message should be displayed to the user.

4) Try above special character combination for all the input fields on your sign up page having some validations. Like Email address field, URL field validations etc.

5) Many applications crash for the input field containing ‘ (single quote) and ” (double quote) examples field like: “Vijay’s web”. Try it in all the input fields one by one.

6) Try adding only numbers to input fields having validation to enter only characters and vice versa.

7) If URL validation is there then see different rules for url validation and add urls not fitting to the rules to observe the system behavior.Example urls like: vijay.com/?q=vijay’s!@#$%^&*()_+}{”:?><,./;’[]web_pageAlso add urls containing http:// and https:// while inserting into url input box.

8) If your sign up page is of some steps like step 1 step 2 etc. then try changing parameter values directly into browser address bar. Many times urls are formatted with some parameters to maintain proper user steps. Try altering all those parameters directly without doing anything actually on the sign up page.

9) Do some monkey testing manually or automating (i.e. Insert whatever comes in mind or random typing over keyboard) you will come up with some observations.

10) See if any page is showing JavaScript error either at the browser left bottom corner or enable the browser settings to display popup message to any JavaScript error.

Thursday, March 13, 2008

FAQ - Manual ( 51 to 60 )


51. How would you develop test harness?


Test Environment Test Bed

Test Environment’s/w and H/w

Test Bed: Test Documents like Test Plan Document, Test Case Document.


52. What is diff between stress & load testing?


Load testing will test the application by increasing the load to check the bottlenecks of the application i.e., at which situation /point the application performance degrades.


Stress testing is testing the application by giving repeated or heavy inputs to check the stability of the application i.e., whether it can withstand repeated inputs or not.


53. What is Risk Mitigation and who will involve in Risk mitigation plan?


1. What are types of problems that may occur in future while testing on the application and what is solution to overcome that problem.

2. Project manager or quality analyst is involved in it.


54. What is error guessing?


Random condition data used for testing. It applies the tester’s experience on testing. For example, in web application checking the site by giving the Internal URL without logging-in the application


55. What are the techniques you follow to write Testcases?

a] Equivalence Partitioning: - An equivalence class is a subset of data which representative of larger class. Equivalence partitioning is a technique for testing equivalence classes rather than under taking exhaustive testing of each volume of larger class.

Example: - A program which edits credit limits within a given range ($10,000 - $15,000) would have three equivalence classes

Less than 10,000 (Invalid)

Between 10,000 & 15,000 (Valid)

Greater than 15,000(Invalid)

b] Boundary Value Analysis: - It is a test data selection technique in which input data is selected from the input and output boundaries of a given functions. It is a technique that consists of developing test cases and data that focus on the input and output boundaries of a given function.

Example: - Salary should be between 10,000 and 15,000. so test data should be between

Low boundary plus or minus (9,999 & 10,001)

On the boundary (10,000 & 15,000)

Upper boundary plus or minus (14,999 & 15,001)

c] Error Guessing: - Error guessing is based on the theory that test cases can be developed based upon the intuition and experience of test engineer.

Example: - Where one of the inputs is date a test engineer may try February 29, 2004 or 9/9/99


56. What is TRM?


TRM means Test Responsibility Matrix..

TRM: It indicates mapping between test factors and development stages..

Test factors like: ease of use, reliability, portability, authorization, access Control, audit trail, ease of operate, maintainable.. Like data may be u know about development stages..

Requirement gathering, Analysis, design, coding, testing, and maintenance


57. What is deferred?


Deferred means delayed. For time being if the developer is delaying in fixing the bug then the status will be given by developer as differed.(it means he confirms that it is a bug)

The delay is because of so many reasons like due to lack of time due to new technology which the developer doesn't know due to lack of resources due to there are other high priority

bugs to be fixed.


58. Test cases for IE 6.0


Test cases for IE 6.0 i.e. Internet Explorer 6.0:---

1) I go for the Installation side; means that-> is it working with all versions of Windows, Netscape or other software’s in other words we can say that IE must check With all hardware and software parts.

2) Go for the Text Part means that all the Text part appears in frequent and smooth manner.

3) Go for the Images Part means that all the Images appears in frequent and smooth manner.

4) URL must run in a better way.

5) Suppose some other language used on it then URL take the Other Characters, Other than Normal Characters.

6) Is it working with Cookies frequently or not?

7) Is it concerning with different script like jScript and VBScript.

8) HTML Code work on that or not.

9) Troubleshooting works or not.

10) All the Toolbars are work with it or not.

11) If Page has Some Links, than how much are the Max and Min Limit for that.

12) Test for Installing Internet Explorer 6 with Norton Protected Recycle Bin enabled.

13) Is it working with the Uninstallation Process?

14) Last but not the least test for the Security System for the IE 6.0


59. What is the difference between web based application and client server application as a tester’s point of view?


According to Tester's Point of view

1) Web Base Application (WBA) is a 3 tier application Browser, Back end and Server.

Client server Application (CSA) is a 2 tier Application Front End, Back end

2) In the WBA tester test for the Script error like java script error VB script error etc, that shown at the page.

In the CSA tester does not test for any script error.

3) Because in the WBA once changes perform reflect at every machine so tester has less work for test.

Whereas in the CSA every time application need to be installed hence it may be possible that some machine has some problem for that Hardware testing as well as software testing is needed.


60. What is the difference between functional testing and regression testing?


Functional testing is a testing process where we test the functionality/behavior of each functional component of the application. i.e., minimize button, transfer button, links etc.

i.e., we check what is each component doing in that application...regression testing is the testing the behavior of the application of the unchanged areas when there is a change in the build. i.e. we check. Whether the changed requirement has altered the behavior of the unchanged areas the impacted area may be the whole of the application or some part of the application.