Subscribe by Email


Showing posts with label Technical. Show all posts
Showing posts with label Technical. Show all posts

Friday, August 3, 2012

What is a Load Test Results Summary Report?


Load testing is one of the most important testing that is carried out under performance testing and involves putting demands or load on the software system or application in order to measure its response and also the quality of response. 


About Load Testing

1.Load testing forms a very convenient means for determining the behavior of the software system or application under question and under both normal as well as peak conditions. 
2.Load testing helps a lot regarding the identification of the maximum operating capacity of the software system or application plus the identification of elements which are causing degradation of the software system.
3.Load testing becomes stress testing when the load is raised above the normal usage patterns. 
4.The load is raised to such limits where the probability of expecting the errors is quite high.
5.There exists no boundary between the transition of the load testing in to stress testing. 
6.The goals of the load testing are still not so specific.
7.Load testing is actually categorized under non functional testing. 
8.Load testing involves the practice in which the expected usage of the software system or application is modeled by simulating the multiple users using the application concurrently.


About Load Test Result Summary Report

1. A good load testing report says much about the software system or application.
2. A good report is always presentable to the customer as well as the manager.
3. A load test results summary report is simply a cut short and modified version of the original load testing reports. 
4. The original load testing reports are quite lengthy and difficult to understand for a customer. Therefore, a summary of this report is prepared which is short enough and simple to understand. 
5. You cannot expect your customer to go through the whole bulky report rather you need to provide them with a glimpse of everything. 
6. A load test results summary report serves all these purposes. 


Elements of Load Test Summary Report


1. Load test goals: 
A load test differs from functional tests in the way that a load test cannot fail or pass without the inclusion of any extra conditions. We mean to say that you cannot test a software system or application stands a load in general rather you test it against some specific load having specific performance parameters.

2. Technical description of the test goals: 
Once you know what your goals are, the requirements need to be formalized and transformed in to a technical description that you can apply to the load testing tool. You need to define aspects like:
a)   Type of load to be given to the software system or application,
b)   Number of virtual users to be employed in every test phase.
c)   Acceptable response time and so on.

     3. Realistic emulation of the virtual users: 
    Most important element of the load test results summary report.  This section lays down the division of the all potential real users of the software system or application in to a number of different types based on their expected behavior. The special script developed for every user is also mentioned alongside. In addition to this the user sessions are also mentioned.

     4. Execution of the test: 
     It mentions what all tests were executed and with what load. 
   
     5. Analyzation of the test results:  
    It includes the result of the test whether pass or fail and valuable information obtained from the tests. It also mentions the following:
    a)   Number of errors
    b)   Response times 
    c)   Number of sessions or requests per second and so on.

    6. Problems and improvement suggestions. 


Monday, July 9, 2012

List out the technical details of mock object?


Mock objects are much in talk these days and seem to be marking themselves as one of the effective tools in carrying out unit testing. 

What are Mock Objects?


- Mock objects are simulated objects counterparts of the original or the non mock object that is intended to mimic the behaviour and working of the original non mock object in a way that is controlled and defined. 
- Classes with heavy code bases are such a pain to test and can be tested only by the mock objects. 
- Ever tried implementing unit tests in a project but failed to do so because of the dependency of the module and difficulty in its isolation?
- Within a budget and time constraint it becomes difficult for configuring and setting up all the external dependencies of the modules. 
- Mock objects are a feasible option for overcoming such problems. 
- Problem with most of the mock tools is that they do not come with documentation so it becomes difficult to work them out. 
- These technical details of mock objects are the center point of this article. 
- Since the mock objects simulate the real object, they are said to possess the same interface as that of the real objects that they are imitating. 
- Nowadays many mock object frame works are available using which the programmers and developers can specify which all methods are to be invoked by the mock object and in which order. 
- Also, the parameters that have to be passed to the mock object can be specified along with the values that will be returned by the mock object. 
- We have divided the technical details of the mock objects in to three categories:
1. Mocks, fakes and stubs
2. Setting expectations
3. Writing log strings

Mocks, fakes and stubs: 
- Some consider the mock objects and fakes to be different things saying that the fakes are much simpler than the mock objects. 
- The fakes are simply used to represent just the interface of the object which they are mimicking and responses that they return are pre-arranged. 
- Thus, we can say a set of method stubs is provided by the fake objects. 
- On the other hand, the mock objects are fake objects but they help in determining whether some other object passes or fails the test to which it is subjected. 
- It does so by the verification whether of the interaction if any took place on the object. 
Everything else apart from these two i.e., fake objects and mock objects is considered to be a stub. 
- Stub is anything unreal is fake and based up on its usage it can be classified as stubs and mocks. 
- Mock objects possess a little more functionality which is that their method implementations contain assertions that are truly theirs. 
- This furthermore implies that the context of each and every call is examined by the true mock object.
- The examination includes the checking of the order of calling of the methods and performing tests on the data that has been passed as arguments to the method calls.

Setting expectations: 
It is ensured by a mock setting that the calls to the system will cause the system to throw some exception like getting hanged or crashing.

Writing log strings: 
Mock methods can be used to make an entry to the public log strings which otherwise could result in invisible performance sapping bugs.


Saturday, March 24, 2012

What are different kinds of soft skills to be a successful tester / test manager?

Soft skill can be defined as a sociological term that plays a very important role in the success and personality development of an individual and can be related to his/ her following aspects:

1. Emotional intelligence quotient
2. Personality traits
3. Communication
4. Languages
5. Social graces
6. Friendliness
7. Attitude (whether pessimistic or optimistic) and
8. Personal habits and so on.

Why Soft Skills important?

- Soft skills in a way complement the IQ i.e., intelligence quotient of a person.

- IQ is included in the hard skills of a person.

- All these skills form an essential part of the occupational requirements for a job.

- A tester or test manager also needs to incorporate all these attributes in himself/ herself in order to be successful and enhance his interactions with the fellow team members, career prospects and also the job performance.

- The soft skills of a tester/ test manager can be related to his/ her ability of interacting effectively with the clients, customers and co workers.

- The soft skills of each and every individual combined together contribute to the success of the organization which can’t be ignored.

- This is the reason why the soft skills are being focussed up on as equally as the hard skills.

Soft skills are considered to be as the behavioural competencies and are more commonly known as the interpersonal skills and include:
1. Conflict resolution
2. Conflict negotiation
3. Communication skills
4. Creative problem solving
5. Selling skills
6. Strategic thing
7. Influencing skills
8. Team building etc.

Another Soft Skill

- Ability to participate actively in the group discussions is also an essential soft skill that companies seek in the testers and test managers.
- It is often the first criteria for the selection.
- Good communication and group discussion skills are the must software skills for the testers.
- The best thing about the soft skills is that they are honed for the professional needs but they eventually affect ones personal life in all the aspects.

So instead of just honing the technical skills, the testers require to focus up on building up their soft skills. But here we do not mean to say that the hard skills should be undermined. A tester cannot survive his job if he is not good at his technical skills. You need to strike a balance between both the hard and soft skills to make yourself a successful tester.

Some Important Soft Skills
Here are some important soft skills:

1. Discipline and perseverance
These two soft skills are psychological tools to persevere and make your efforts more productive. It increases the quality of your work and helps you focus well.

2. Reading skills
Reading skill may sound odd here but its importance will be realised as you deal on with the large amount of specifications and information every day. Testers have to deal with large chunks of information and a hell lot of documentations every day and so honing this soft skill becomes apparently necessary.

3. Negative thinking
Now you must be wondering what this is for. Well, negative thinking though works badly for the real aspects of life but it really helps a lot in testing while using tactics like negative testing, exploratory testing, fault injection techniques etc, since in such testing techniques, the tester to consider all the things by which the program can be affected.

4. Communication and interpersonal skills

5. Time management skills
These are needed since you need to make most of your time.

6. Effort prioritization
This is needed to assign importance to the tasks so that you an finish up all of them efficiently without messing up.

7. Attitude


Monday, February 13, 2012

Why is documentation so important for software testing?

IMPORTANCE OF DOCUMENTATION

- Software documentation like other kinds of documentation is just a piece of plane text.
- Though just being plain text, its importance in the field cannot be neglected.
- You must have observed that whenever you purchase some software or application it comes with a documentation which contains user’s manual also.
- It is obvious that you must be using this user’s manual to understand and use the software better.
- The manual might have always helped you in diagnosis of your system whenever it might have had a break down, crash or hang.
- Documentation is a great help as it helps us in operating the software system or application.
- Documentation helps different people in different ways.
- Documentation has a very important role to play in the field of software engineering.

TYPES OF DOCUMENTATION

1.Requirements Documentation
- This documentation states all the requirements of a software system or application be it functional requirements or non functional requirements.
- Apart from the requirements it also states the features, functionalities, capabilities, attributes and characteristics of a software system or application. - This type of documentation serves as a foundation for the other documentations.

2. Technical Documentation
- This documentation contains the written code of the program and algorithm implemented.
- It also provides knowledge about the user interface of the software system or application.
- It also gives information about the APIs.

3. Marketing Documentation
- This documentation gives tip and information for marketing the software product.

4. Architectural Documentation
- This documentation is all about the internal structure of the software system or application.
- It explains how a particular software system or application is related to the environment and on what principles the construction of the program is based.

5. End user Documentation or User’s Manual
- This document is popularly known as user’s manual.
- It contains all type of knowledge that a user might need to operate the software system or for trouble shooting.

SOME FACTS ABOUT DOCUMENTATION
- Documentation introduces the software system or application to the user.
- It contains details about the software.
- Documentation can be thought of as a verified and validated agreement between the product developer and the buyer i.e., client.
- Documentation is modular in nature.
- It serves as road map for the user.
- It is said that if something is not present in the writing, it actually never happened.
- Documentation serves as a proof.
- If you don’t make a write up about the software, the client or the users will think that you are just making up the facts and if the things are there, they might have been done by some body else.
- You need to document every aspect of your software so that if later any dispute arises, none will be able to testify your work and decisions.
- Information contained in the documentation is very crucial and important.
- The software engineering industry is so documentation intensive.

Let us say that you have a program that got some problem like it crashed or hanged and the person in charge of the software is not available. Neither you know the structure and design of the program nor do you have any idea of how to mend the fault in the program. So what you will do in such a case?

Here documentation comes to your rescue.
- You have all the necessary details and tips on how to fix a fault and also the design of the program.
- It is important that the proper documentation is made available to each and every personnel of the software development team.


Facebook activity