Entries from February 2008 ↓

Soft Skill for Testers: Advanced Unix commands with examples

This article will guide you on some advanced Unix commands. Also comprehensive guide is provided for each command for its use giving examples. The topics covered in this article includes advanced Unix commands with examples, Difference between symbolic and hard links and Unix variables guide.

Download the article: Advanced Unix commands

Thanks Meenakshi for sharing this article for our readers.

If you have missed previous article on “Unix basics for tester” series, you can see the basic Unix commands article here.

If you are good at Unix operating system then you can share some more ‘useful Unix commands with examples’ in comment section below.

Jobs: I have updated the QA jobs section with new opening. See the details on below link:

Soft Skill for testers: How to improve communication skill

Have you been facing problems in interviews? Do you fear to deliver any speech? Do you hesitate to speak in your company meeting? Do you have problems explaining your views to others? Do others disagree with you even though you are right?

If answers to these questions are ‘yes’ then it’s time to improve your communication skill. You should be perfect in all ways of communications like verbal, presentation skill and written communication.

Poor communication generally leads to disagreement and misunderstandings. Even in romantic relationship if you are poor at communication, chances are high that you will break up with your boy friend or girl friend.

Good communication skill is a must for software testers. You might have seen this line in every job requirements especially openings in QA and testing field. As testers require communicating with different project team members including clients, communication skill plays important role. If you want to win the arguments (I mean arguments that are right) and find the common solution for your problems with your subordinates then you should be able to express your views effectively.

As a part of ‘soft skills for testers’ article series I am sharing detailed power point presentation on “How to improve communication skill”.

Keep in mind these simple rules for effective communication:

  • Listen carefully when others are clarifying their thoughts. Don’t interrupt others in-between.
  • Do not speak too fast. Slow down while speaking.
  • Speak clearly. Your pronunciation should be loud and clear.
  • Make eye contact with whom you are speaking. This increases chances of mutual agreement.
  • Read, read and read. For better communication and effective words in your speech your vocabulary should be very strong. Reading more and more will increase your vocabulary.

Besides these 5 golden rules for effective communication here is PPT presentation on improving your communication skill.

Main topics covered in this PPT:
1) What makes a good communicator?
2) Process of communication
3) Active listening
4) Using non-verbal communication effectively
5) Presentation skill while appearing for an interview.
Thanks SoftLogic Technologies for this presentation.

Update: You can also download the first PPT on communication skill.

Now get paid to find software bugs. uTest is paying testers to find bugs

Some days ago I have written a post on Pay per bug approach to charge clients on the basis of number of bugs. There are some distinct obstacles in this approach like how to validate bugs? How much to be paid for bugs? Will core functionality and business logic bugs get caught in this model? There was a good discussion on this topic in comment section as many readers suggested some key approach to handle these obstacles.

In spite of these obstacles, uTest is now offering some decent cash to testers to find flaws in customer applications. They are going to pay to testers for every approved bug.

How will it work?
uTest is going to tie up with some companies which don’t have dedicated QA teams and want to outsource their testing work. Such companies can use uTest services and testers community to get their application tested. In return companies will pay some amount to uTest based on the severity and priority of the bug. At the end this amount will be awarded to testers who find these bugs.

Anyone can sign up with uTest to test software’s and make cash for finding bugs. Testers can earn from few hundred to few thousand dollars per month based on experience and performance. The bug pricing will be decided by bug type, type of application and severity of the bug.

What are the benefits?
Good cash benefits for your skills,
Work from anywhere,
Flexible working time (work whenever you want),
And last important benefit: Be your own boss ;-)

As per now I think this is win-win condition for customers who don’t have separate QA departments and testers who want to earn some descent cash from their skill and experience.

Have your opinion on this in comment section below.

Update: This is a pilot program from uTest and only selected testers will get response when this pay per bug system goes live. This is a beta program and right now I can’t predict any success of this program. So wait and watch till next update from them.

Check your eligibility for CSTE certification. Take this sample CSTE examination

I have written many articles on software testing certifications. Here is one more ‘sample exam questions’ article on CSTE certification. CSTE testing certification is the basic certification to check testers skill and understanding of software testing theory and software testing practices.

If you are applying for CSTE certification check if you can answer at least 75% of the following test questions. Four and half hour CSTE exam consist of 4 parts, Two multiple choice parts and two essay parts.

Below you will find 20 multiple choice questions from all skill categories. There are around 10 skill categories and I have included 2 questions from each category.

Skill categories:

  • Software Testing Principles and Concepts
  •  Building the Test Environment
  •  Managing the Test Project
  •  Test Planning
  •  Executing the Test Plan
  •  Test Reporting Process
  •  User Acceptance Testing
  •  Testing Software Developed by Contractors
  •  Testing Internal Control
  •  Testing New Technologies

These are the latest sample questions from the CSTE CBOK.

Mark the answers somewhere so that you can check the score at the end of the test.

1. The customer’s view of quality means:
a. Meeting requirements
b. Doing it the right way
c. Doing it right the first time
d. Fit for use
e. Doing it on time

2. The testing of a single program, or function, usually performed by the developer is called:
a. Unit testing
b. Integration testing
c. System testing
d. Regression testing
e. Acceptance testing

3. The measure used to evaluate the correctness of a product is called the product:
a. Policy
b. Standard
c. Procedure to do work
d. Procedure to check work
e. Guideline

4. Which of the four components of the test environment is considered to be the most important component of the test environment:
a. Management support
b. Tester competency
c. Test work processes
d. Testing techniques and tools

5. Effective test managers are effective listeners. The type of listening in which the tester is performing an analysis of what the speaker is saying is called:
a. Discriminative listening
b. Comprehensive listening
c. Therapeutic listening
d. Critical listening
e. Appreciative listening

6. To become a CSTE, an individual has a responsibility to accept the standards of conduct defined by the certification board. These standards of conduct are called:
a. Code of ethics
b. Continuing professional education requirement
c. Obtaining references to support experience
d. Joining a professional testing chapter
e. Following the common body of knowledge in the practice of software testing

7. Which of the following are risks that testers face in performing their test activities:
a. Not enough training
b. Lack of test tools
c. Not enough time for testing
d. Rapid change
e. All of the above

8. All of the following are methods to minimize loss due to risk. Which one is not a method to minimize loss due to risk:
a. Reduce opportunity for error
b. Identify error prior to loss
c. Quantify loss
d. Minimize loss
e. Recover loss

9. Defect prevention involves which of the following steps:

a. Identify critical tasks
b. Estimate expected impact
c. Minimize expected impact
d. a, b and c
e. a and b

10. The first step in designing use case is to:
a. Build a system boundary diagram
b. Define acceptance criteria
c. Define use cases
d. Involve users
e. Develop use cases

11. The defect attribute that would help management determine the importance of the defect is called:
a. Defect type
b. Defect severity
c. Defect name
d. Defect location
e. Phase in which defect occurred

12. The system test report is normally written at what point in software development:
a. After unit testing
b. After integration testing
c. After system testing
d. After acceptance testing

13. The primary objective of user acceptance testing is to:
a. Identify requirements defects
b. Identify missing requirements
c. Determine if software is fit for use
d. Validate the correctness of interfaces to other software systems
e. Verify that software is maintainable

14. If IT establishes a measurement team to create measures and metrics to be used in status reporting, that team should include individuals who have:
a. A working knowledge of measures
b. Knowledge in the implementation of statistical process control tools
c. A working understanding of benchmarking techniques
d. Knowledge of the organization’s goals and objectives
e. All of the above

15. What is the difference between testing software developed by a contractor outside your country, versus testing software developed by a contractor within your country:
a. Does not meet people needs
b. Cultural differences
c. Loss of control over reallocation of resources
d. Relinquishment of control
e. Contains extra features not specified

16. What is the definition of a critical success factor:
a. A specified requirement
b. A software quality factor
c. Factors that must be present
d. A software metric
e. A high cost to implement requirement

17. The condition that represents a potential for loss to an organization is called:
a. Risk
b. Exposure
c. Threat
d. Control
e. Vulnerability

18. A flaw in a software system that may be exploited by an individual for his or her advantage is called:
a. Risk
b. Risk analysis
c. Threat
d. Vulnerability
e. Control

19. The conduct of business of the Internet is called:
a. e-commerce
b. e-business
c. Wireless applications
d. Client-server system
e. Web-based applications

20. The following is described as one of the five levels of maturing a new technology into an IT organization’s work processes. The “People-dependent technology” level is equivalent to what level in SEI’s compatibility maturity model:
a. Level 1
b. Level 2
c. Level 3
d. Level 4
e. Level 5

Done? Check the answers. 

In coming articles I will emphasize more on sample CSTE essay papers and how to answer multiple choice and essay type questions. You can refer previous software testing certification articles here.

To get more testing tips, register free with your email only.

Software testing questions and answers

This article is the part software testing question and answer series. Here I will answer some reader’s questions asked to me in comments or using contact form. If you have queries on software testing, quality assurance or career in testing then you can ask me these questions in comment section below.

It’s not possible to address each and every question in detail as I observed the questions are on vast topics, for which detail answers will itself require a new article. I will answer such questions in brief here and will also write detail articles separately if required.

So let’s get some questions answered:

Naresh A. asks:

“My past experience was related to “Test Engineer”. Recently I am appointed as Test Lead in a product based company. Currently there is no Pre-established testing process. As a TL am meant to define a standard process for the entire testing flow and I will maintain certain documents for each product.
Can you help me out in establishing a process for testing, and make me know the entire responsibilities of TL and what documents I am supposed to prepare and maintain?”

As a team leader you are responsible for project planning, scheduling, communicating your project status to your manager and most important task of assigning and monitoring the project work. Your main responsibility is to build a team to achieve your project goals. You need to focus on handling the challenges in your project so that your team and project will grow and perform well.

As far as the standard testing process is considered, it’s depends on you – what procedure you want to establish. Yes some people might blame me for this point but I prefer to establish my own processes that work for me. I don’t stick to those old process definitions that are written and managed in some 90′s and most of which might not applicable nowadays.

Test lead is responsible for ensuring project plan changes are incorporated in test plan. You might write a test plan and test strategy (In some cases it might be written by senior test team member or even by project test manager) Ensure the work is going according to this test plan. Identify the risks and try to mitigate them. At the end of project testing life cycle ensure that all test objectives are accomplished and acceptance criteria is met.

More TL responsibilities includes: Test Case Review, Requirements Validation, Monitoring the execution of manual and automated test cases, Prepare test summary report and Communicate test status to seniors and prepare corresponding documents.

To know more on SQA processes read this article “SQA Processes- How to Test complete application“. Hope from this answer you will get good idea of testing processes and TL responsibilities.

Pavan Ankus asks:

“I am appearing for the QA positions in US. I would kindly request you to mail me the suitable challenging situations in manual testing and also since I don’t have domain knowledge in Insurance, finance and other financial domain experience I am finding hard to explain to the interviewer as an experienced person. In this regard I need your suitable answer as to how to face the interviewer?”

In every testing interview you will get this question: “Tell me any challenging situation you faced in your previous projects or Tell me any bug that you feel proud to find it?”

I think answers to these questions depend on your testing career. I know every one of you might have faced many challenging situations where exceptional thinking is required to solve such problems.

I will suggest to pick any such situation from you career and explain it in better way. At least it should sound challenging ;-) This will help you to face further questions from interviewer depending on your answer.

The broad challenges in manual testing are: How to ensure complete test coverage? Testing without an automation tool is itself a big challenge. You can also explain non-technical challenges in manual testing like managing the testing work in critical time (Llink to testing under time limit) i.e. completing testing before deadline and even worst case if the deadline itself is not feasible.

Explaining a challenging bug you found in your career can be also a good answer for this question. For example the bug that was difficult to find or reprove or having big impact on customer revenue etc.

Pavan you mentioned that you don’t have knowledge in banking and finance domain then how you expect from yourself to give answer on that? If you don’t have experience in banking and finance domain then do not put this as a skill in your resume just for the sake of matching your profile with employer requirements. If you really want to get into testing of BFSI (Banking, Financial services and Insurance) domain then first study this domain. Know the basic concepts in BFSI domain. See the resources I have listed on BFSI domain on our resource page. Keep in mind you can answer in detail about any question if you have worked on that.

Mitch asks:

“What is the best way to go about getting a pay rise? Is reporting and graphing bugs found compared to other team member a good idea?

Comparing the bug count with other team or team member is very bad idea to ask for pay rise. If you are working for the organization for long time then your employer know your value and importance in organization. There is no need to show how your bug count graph is higher than your counterparts.

So what is the best way to ask for good salary rise?
At the time of your performance appraisal you should be able to convince to your reviewer that how you worked hard for your organization, How you succeeded in managing difficult tasks and how you enhanced your skills to better match your current work profile. If you succeed in this negotiation then you will definitely get good pay rise.

Other factors considered while giving you pay rise:
Your relevant skills, Complexity of application you are working on, problem solving skill, total and relevant experience, education and certifications.
Ask your questions in below comment section.

Read the previous article on testing questions and answer part1.
If you want to get your questions answered then Subscribe via email.

Unix basics for software testers

No matter whether you are working on stand-alone project or web project, operating systems and networking knowledge is must for testers. Many testing activities like installation testing, performance testing are dependent on operating system knowledge. Now days most of the web servers are Unix based. So Unix knowledge is mandatory for tester.

For the beginners in Unix, learning basic Unix commands is a good start. This article explains basic Unix commands and in next article we will move on to the Unix operating system basics and advanced Unix commands.

The best way to learn following commands is to read and simultaneously practice them on Unix operating system.

These are the Unix commands that are mostly used while interacting with Unix servers. Most of the time you might be interacting with Unix OS through remote windows machines using softwares like ‘Putty’. In such testing environment this article is very useful.

You can download the article written by Meenakshi on Unix basics for testers on below link:

Download: Unix basics for testers article (Doc file)

I will continue this series of “soft skills required for testers”. Here is list of skills on which I will concentrate in coming posts:

  • Operating systems skill for testers.
  • Networking skill.
  • Database ( Mainly SQL) knowledge for testers.
  • Basic programming skill.

All these skills are required to become a successful software tester.

If you think any other skill should be also included in this “soft skills for testers” article series then please let me know in below comment section. I will work on those subjects to include them in my future articles.

Update: For software Testing job seekers, I have updated our Job page with two new openings. See more details on these job openings on below links:

Don’t want to miss any tip? Subscribe Via Email!