Thursday, 20 June 2013

Why do you choose Software Testing – as your Career

Career in Software Testing
A Career in Testing Scope of getting job is especially high, No need to depend on any technology, Testing will be there for ever could be as pleasing and satisfying as any other career for motivated and capable people.

  1. Testing offers sufficient technical challenges for an interested professional to continuously learn, enrich his or her knowledge, and achieve greater heights of personal satisfaction as well as product quality and fulfillment.
  1. I like software testing because it is NOT straightforward. It's not like you need to do 100 things for small applications and 10,000 things for bigger applications and done with it. And it's not like you're good if you have a functional tests  and system tests. It's not about the quantity; it is actually about the quality. when we're testing something. Different aspects of problems that the application solves, technology that is used, business expectations, threats, performance, dead line date, project team, process, and etc. Finding best possible testing strategy and execution around this environment is great fun.
  1. Development engineers be likely to focus on particular Requirements. Test Engineers, in compare, generally require a more social factors understanding of the product fairly than be extent to a single module or component. This gives an boundary to test engineers at becoming domain specialist.
  1.  Most Development happens in a compartmentalized manner, Testing may even require a much deeper understanding of the interactions and independencies amongst multiple domains to be able to simulate real life scenarios.
  1.  I would say this is more of test execution fun. This is not about writing automation code I would say. Coming up with best test execution strategy is great fun. What kind of tool is useful for data driven testing? How about model based testing? What's best test automation strategy for agile process? Experience in several different test framework and tools. Quick experiment on new tools. What if we just choose to go with manual for testing this feature? How can we represent our test results and communicate with the team? This requires endless learning. Learn to design good test framework,  learn new languages and new tools, learn how to represent test results, learn how to optimize test execution time, learn, learn and learn.

    by ,
    QA Trainer.

Wednesday, 12 June 2013

Difference between Test Plan and Test Strategy

Test Plan - A software project test plan is a document that describes the objectives, scope, approach, and focus of a software testing effort
The purpose of the Master Test Plan, as stated by the IEEE Std 829 is to provide an overall test planning and test management document for multiple levels of test

Test Strategy – Test Strategy or Test Approach is a set of guide lines that describes test design. Test strategy says - How testing is going to be performed? What will be the test architecture?

Test Strategy can be at two levels – Company/Organization Level and Project Level. For e,g, If company is product based, then there can be a general test strategy for testing their software products. Same strategy can be implemented (with/without  some modifications) at project level whenever a new project comes.
Well,  Arun  introduces
Test Plan: the set of ideas that guide a test project
Test Strategy: the set of ideas that guide test design
Test Logistics: the set of ideas that guide the application of resources to fulfill a test strategy
I find these ideas to be a useful jumping off point. Here are some implications:
The test plan is the sum of test strategy and test logistics.
The test plan document does not necessarily contain a test plan.      This is because many test plan documents are created by people who are following templates without understanding them, or writing things to please their bosses, without knowing how to fulfill their promises, or simply because it once was a genuine test plan but now is obsolete.
Conversely, a genuine test plan is not necessarily documented. This is because new ideas may occur to you each day that change how you test.
Conclusion:
Is Test Plan document is required for testing?
Test Plan covers – What needs to be tested, How testing is going to be performed? Resources needed for testing, Timelines and Risk associated.
For efficient and effective test planning we don’t really need IEEE-829 template for test plan. Planning can be done without test plan document also. Identify your test Approach (strategy) and go with your testing. Many test plans are being created just for the sake of processes.
Note – We are not against Test Plan documents. Use test plan documents if they really contains some useful information.
In the upcoming posts, we will discuss points to take care while deciding a test strategy & guide to prepare a Test Plan.
Related Posts:
·           Test Strategy
·           Defining a Test Strategy
·           Creating a Test Strategy

·           Effective Handbook for Implementing Test Strategies

Thursday, 23 May 2013

Why QTP 10 identiy IE as window,not browser.

 http://softwaretestingmasterqtp.blogspot.in/


You have to enable "Enable third-party browser extensions" (Advanced tab) in Internet Options alt least.
Disable also "Auto Complete for" (Content tab) options.

Tuesday, 21 May 2013

Ten Challenges Faced by Software Testing Engineers while working with QTP

1. QTP can only Run on Microsoft Windows OS. Support for other operating systems is not yet supported. Hence, it is not possible to do cross platform testing with Quick Test Professional.

2. QTP can not recognize objects running on remote machines. Hence, it is not possible for QTP to automate applications running on remote machines. Also, QTP can not automate applications invoked through Citrix. The possible workaround is install QTP on the Citrix server and then launching QTP and the application might help.


3. Reporting facility and Error handling in QTP can be considerably improved. 


4. QTP has very limited support for C++ applications.


5. The application to be tested/automated has to be opened after opening QTP as internally QTP can hook with the application only when the application is opened after launching QTP.


6. QTP supports only one scripting language which is Vb Script which has several limitations. Had there been a choice of language to automate just like it is in Selenium, it would be have been very useful.


7. QTP performance degrades if the Object repository size is quite huge. It takes time to open a test with huge QTP object repository. Same goes for QTP Actions. Using too many actions in QTP decreases QTP's performance. 


8. QTP Scripts dont work on locked machines. 


9. QTP supports Internet Explorer, Firefox and now Google Chrome. However, support for Firefox and Chrome is still limited and only possible in QTP 11. 


10. QTP license cost is quite high.

Functional Testing Boundary Value Testing – Equivalence Class Testing

Agenda :
Boundary Value Testing
         Boundary Value Analysis
           Generalizing Boundary Value Analysis
         Limitations of Boundary Value Analysis
                                                        Robustness Testing
                                                        Worst Case Testing
                                                        Special Value Testing  
Examples
                                                                Test Cases for the Triangle Problem
                                Test Cases for the NextDate Problem
                                Test Cases for the Commission Problem
                                Guidelines for Boundary value Testing    ........
Equivalence Class Testing

Equivalence Classes
·         Weak Equivalence Class Testing
·         Strong Equivalence Class Testing
·         Traditional Equivalence Class Testing
Equivalence Class Test Cases for the Triangle Problem
Equivalence Class Test Cases for the NextDate Function
Equivalence Class Test Cases for the Commission Problem
Guidelines and Observations

Boundary Value Analysis:

   ·Basic idea: use input variable values at their minimum (min), just above the minimum (min+), a nominal value (nom), just below their maximum (max-), and at their maximum (max)

“Single fault” assumption in reliability theory: failures are only rarely the result of the simultaneous occurrence of two (or more) faults.
 
·         The boundary value analysis test cases are obtained by holding the values of all but one variable at their nominal values, and letting that variable assume its extreme values
 

Boundary value analysis works well when the program to be tested is a function of several independent variables that represent bounded physical quantities

e.g. NextDate test cases are inadequate (little stress on February, dependencies among month, day, and year)
e.g. variables refer to physical quantities, such as temperature, air speed, load etc.
Equivalence Classes
Motivations

       Have a sense of complete testing
       Avoid redundancy

Equivalence classes form a partition of a set, where partition refers to a collection of mutually disjoint subsets whose union is the entire set (completeness, non-redundancy)
The idea is to identify test cases by using one element from each equivalence class
“treated the same” → “traversing the same execution path”
The key is the choice of the equivalence relation that determines the classes
Defines equivalence classes in terms of validity  
Commission problem
Valid inputs: 1 ≤ lock ≤ 70, 1 ≤ stock ≤ 80,             1 ≤ barrel ≤ 90
Invalid inputs: lock < 1, lock > 70, stock < 1,         stock > 80, barrel < 1, barrel > 90

For valid inputs, use one value from each valid class (like weak equivalence testing)
For invalid inputs, a test case will have one invalid value and the remaining values will all be valid (single failure)
 

Monday, 20 May 2013

Functional Testing Defects



·         Run Time Errors
  1. Page Not found Error
  2. Display of Blank page
  3. Occurrence of Script errors
  4. Occurrence of SQL Exceptions
  5. Occurrence of Internal Server Error
  6. Memory Leakage Error
 ·         Validation Checking
  1. Null values / spaces being accepted for Mandatory fields
  2. Incorrect date validations
  3. Incorrect validation for numeric fields
  4. Incorrect validations for currency fields
  5. Accepting Special Characters.
·         Database
Two types of errors that may occur in web application
  1. Data Integrity : Missing or wrong data in table
  2. Output Errors : Errors In writing ,editing or reading operation in the table
·         Data Invariant
  1. Missing display of fields
  2. Incorrect display of fields
·         Logical Errors
  1. Incorrect calculations
  2. Incorrect display of data
·         Cookies
  1. Check for the cookies that has to be enabled and how it has to be expired
·         Link Testing
  1. All Hyperlinks
  2. All Internal links
  3. All External links
  4. All mail links
  5. Check for orphan pages
  6. Check for Broken Links
·         Forms
  1. All Field Level Checks
  2. All Field Level Validations
  3. Functionality of create, modify, delete and view
  4. Handling of wrong inputs
  5. Default values if any (Standard)
  6. Optional Vs Mandatory Fields
·         Web Indexing
Depending on how the site is designed using Meta tags, frames, HTML syntax, dynamically created pages, passwords or different languages, our site will be searchable in different ways
  1. Meta Tags
  2. Frames
  3. HTML syntax