Archive

Archive for January, 2008

WEB Testing

Software testing – Questions and Answers – WEB Testing

  1. Describe some of the possible web page futures .
  2. Question: What are possible configurations that could affect the testing strategy of any web site?
    Answer: Hardware platform (PC, Mac), Browser software and version, Browser Plug-Ins, Browser settings options, Video resolution and Colour Depth, text size,
  3. What is website usability testing ?
  4. Why spell checker is not enough during testing spelling on web page?
  5. Question: Name a few website mistakes that could cause configuration and compatibility bugs.
    Answer: Non standard colours, frames, tables etc.
  6. Question: What the latest web technologies do you know?
    Answer: RSS,
  7. Question: Name some Alternative Browsers.
    Answer: Opera, Mozilla
  8. Describe some Caching Issues.
  9. What HTML standard do you know?
  10. What web specific types of testing do you know?
  11. What is static and what is dynamic web page?
  12. Question: Can the Netscape scripting host without plug-ins run Microsofts JScript on the client side?
    Answer: No
  13. Question: What is Glyphs?
    Answer: Glyph is the picture of the character.
  14. What techniques will cause double-byte problems to show up?
  15. What is Alt Key Input?
  16. How will you decide when and what to test during performance testing?
  17. Question: What types of web testing security problems do you know?
    Answer:(Denial of Service (DoS) attack, buffer overflow)
  18. Question: What types HTTP Response Codes do you know?
    Answer: ( 2xx – success, 3xx – Redirection, 4xx – Client Error, 5xx – Server Error )
  19. What errors can occur when the page loads?
  20. What are the metrics what can be used during performance testing?
  21. What HTML file extension can be used?
  22. What is CSS stands for?
  23. What are the differences between testing WEB application and testing client-sever application?
  24. Write test cases for Search Engine?
  25. Difference between HTTP and HTTPS? Explain how the data is secured in HTTPS?
  26. What does DNS contains?
  27. What is the difference between authentication and authorization?
  28. What type of security testing you performed?
  29. Difference between GUI and Usability Testing

Software Testing Questions

I have so many questions in my mind when I think of any interview questions for Software testing / QA Engineer. Would you be able to answer all of them?

1. What is Software Testing?
2. What is the Purpose of Testing?
3. What types of testing do testers perform?
4. What is the Outcome of Testing?
5. What kind of testing have you done?
6. What is the need for testing?
7. What are the entry criteria for Functionality and Performance testing?
8. What is test metrics?
9. Why do you go for White box testing, when Black box testing is available?
10. What are the entry criteria for Automation testing?
11. When to start and Stop Testing?
12. What is Quality?
13. What is Baseline document, Can you say any two?
14. What is verification?
15. What is validation?
16. What is quality assurance?
17. What is quality control?
18. What is SDLC and TDLC?
19. What are the Qualities of a Tester?
20. When to start and Stop Testing?
21. What are the various levels of testing?
22. What are the types of testing you know and you experienced?
23. What exactly is Heuristic checklist approach for unit testing?
24. After completing testing, what would you deliver to the client?
25. What is a Test Bed?
26. What is a Data Guidelines?
27. Why do you go for Test Bed?
28. What is Severity and Priority and who will decide what?
29. Can Automation testing replace manual testing? If it so, how?
30. What is a test case?
31. What is a test condition?
32. What is the test script?
33. What is the test data?
34. What is an Inconsistent bug?
35. What is the difference between Re-testing and Regression testing?
36. What are the different types of testing techniques?
37. What are the different types of test case techniques?
38. What are the risks involved in testing?
39. Differentiate Test bed and Test Environment?
40. What ifs the difference between defect, error, bug, failure, fault?
41. What is the difference between quality and testing?
42. What is the difference between White & Black Box Testing?
43. What is the difference between Quality Assurance and Quality Control?
44. What is the difference between Testing and debugging?
45. What is the difference between bug and defect?
46. What is the difference between verification and validation?
47. What is the difference between functional spec. and Business requirement specification?
48. What is the difference between unit testing and integration testing?
49. What is the diff between Volume & Load?
50. What is diff between Volume & Stress?
51. What is the diff between Stress & Load Testing?
52. What is the Diff between Two Tier & Three tier Architecture?
53. What is the diff between Client Server & Web Based Testing?
54. What is the diff between Integration & System Testing?
55. What is the Diff between Code Walkthrough & Code Review?
56. What is the diff between walkthrough and inspection?
57. What is the Diff between SIT & IST?
58. What is the Diff between static and dynamic?
59. What is the diff between alpha testing and beta testing?
60. What are the Minimum requirements to start testing?
61. What is Smoke Testing & when it will be done?
62. What is Adhoc Testing? When it can be done?
63. What is cookie testing?
64. What is security testing?
65. What is database testing?
66. What is the relation ship between Quality & Testing?
67. How do you determine, what to be tested?
68. How do you go about testing a project?
69. What is the Initial Stage of testing?
70. What is Web Based Application Testing?
71. What is Client Server Application Testing?
72. What is Two Tier & Three tier Architecture?
73. What is the use of Functional Specification?
74. Why do we prepare test condition, test cases, test script (Before Starting Testing)?
75. Is it not waste of time in preparing the test condition, test case & Test Script?
76. How do you go about testing of Web Application?
77. How do you go about testing of Client Server Application?
78. What is meant by Static Testing?
79. Can the static testing be done for both Web & Client Server Application?
80. In the Static Testing, what all can be tested?
81. Can test condition, test case & test script help you in performing the static testing?
82. What is meant by dynamic testing?
83. Is the dynamic testing a functional testing?
84. Is the Static testing a functional testing?
85. What are the functional testing you perform?
86. What is meant by Alpha Testing?
87. What kind of Document you need for going for an Functional testing?
88. What is meant by Beta Testing?
89. At what stage the unit testing has to be done?
90 Who can perform the Unit Testing?
91. When will the Verification & Validation be done?
92. What is meant by Code Walkthrough?
93. What is meant Code Review?
94. What is the testing that a tester performs at the end of Unit Testing?
95. What are the things, you prefer & Prepare before starting Testing?
96. What is Integration Testing?
97. What is Incremental Integration Testing?
98. What is meant by System Testing?
99. What is meant by SIT?
100 .When do you go for Integration Testing?
101 Can the System testing be done at any stage?
102. What are stubs & drivers?
103. What is the Concept of Up-Down & Down-Up in Testing in integration testing?
104. What is the final Stage of Integration Testing?
105. Where in the SDLC, the Testing Starts?
106. What is the Outcome of Integration Testing?
107. What is meant by GUI Testing?
108. What is meant by Back-End Testing?
109. What are the features, you take care in Prototype testing?
110. What is Mutation testing & when can it be done?
111. What is Compatibility Testing?
112. What is Usability Testing?
113 What is the Importance of testing?
114. What is meant by regression Testing?
115. When we prefer Regression & what are the stages where we go for Regression Testing?
116. What is performance testing?
117. What is the Performance testing; those can be done Manually & Automatically?
118 What is Volume, Stress & Load Testing?
119. What is a Bug?
120. What is a Defect?
121. What is the defect Life Cycle?
122. What is the Priority in fixing the Bugs?
123. Explain the Severity you rate for the bugs found?
124. Diff between UAT & IST?
125. What is meant by UAT?
126. What all are the requirements needed for UAT?
127. What are the docs required for Performance Testing?
128. What is risk analysis?
129. How to do risk management?
130. What are test closure documents?
131. What is traceability matrix?
132. What ways you followed for defect management?

133. What is diff betn Smoke Testing and Sanity Testing?

Test Automation job interview questions:
1. What automating testing tools are you familiar with?
2. How did you use automating testing tools in your job?
3. Describe some problem that you had with automating testing tool.
4. How do you plan test automation?
5. Can test automation improve test effectiveness?
6. What is data – driven automation?
7. What are the main attributes of test automation?
8. Does automation replace manual testing?
9. How will you choose a tool for test automation?
10. How you will evaluate the tool for test automation?
11. What are main benefits of test automation?
12. What could go wrong with test automation?
13. How you will describe testing activities?
14. What testing activities you may want to automate?
15. Describe common problems of test automation.
16. What types of scripting techniques for test automation do you know?
17. What are principles of good testing scripts for automation?
18. What tools are available for support of testing during software development life cycle?
19. Can the activities of test case design be automated?
20. What are the limitations of automating software testing?
21. What skills needed to be a good software test automator?
22. How to find that tools work well with your existing system?
23. Describe some problem that you had with automating testing tool.
24. What are the main attributes of test automation?
25. What testing activities you may want to automate in a project?
26. How to find that tools work well with your existing system?
27. What are some of the common misconceptions during implementation of an automated testing tools for the first time?

WinRunner interview questions
QuickTest Professional coming soon

1. Give one line answer about WinRunner?
2. How do you define WinRunner on your own?
3. WinRunner is suitable for which type of applications?
4. What are all the types of applications WinRunner can use?
5. What’s the WinRunner version number you used for your applications?
6. What are all the different types of recordings available in WinRunner?
7. When do you go for Context Sensitive and Analog recordings? What’s the difference between them?
8. What are all the Limitations & Advantages of WinRunner?
9. Where you find that you can’t use WinRunner for automation?
10. What’s the types application you working on using WinRunner?
11. What’s your comfort level in using WinRunner?
12. What is meant by Synchronization? How do you implement it in WinRunner?
13. What is meant by Check points? Types of Check points? In what situation will you use it?
14. What are all the different platforms that WinRunner can be used?
15. Any knowledge of Test Director?
16. Difference between WinRunner and Test Director?
17. What databases can Test Director reside on?
18. Explain the project tree in Test Director.
19. Advantages of WinRunner over other market tools silk, robot etc.?
20. How does Winrunner identify GUI Objects?
21. What’s the use of GUI Map Editor?
22. Winrunner GUI map modes?
23. What are the two GUI Map modes available in WinRunner?
24. What is the use of rapid test script wizard?
25. How will you synchronize tests using WinRunner? When should you synchronize? Synchronize settings?
26. How do you check GUI objects?
27. How do you check a bitmap?
28. What is meant by GUI Spy?
29. Besides Record and Replay what else can be done using WinRunner?
30. What are different types of running a test?
31. When do you use Verify/Debug/Update Modes?
32 When do you use Break Points?
33. What is Toggle Break Points? How it differ from Break points?
34. What’s Step and Step into?
35. What’s the role of GUI Map Editor? (Its connects logical name in the script to the physical attributes of the object in the GUI Map Editor).
36. What is meant by Function Generator? (F7).
37. How do you load GUI Map Editor?
38. What is injector in load runner?
39. What is TSL? What 4GL is it similar too?
40. How do you program tests with TSL?
41. How do you invoke an application using TSL?
42. What is Module? What’s Compiled Module?
43. Explain data parameterization in WinRunner.
44. What is User Define Functions? What are all the different types of User
45. What is Function? Types of Functions?
46. Defined Functions available in WinRunner?
47. Name a couple of standard web function found in the function generator? And explain their purpose.
48. Where do you use Private/Public function in your script?
49. How do you forcibly capture an Object using WinRunner (when WinRunner not able identify it)?
50. Can you test DB using WinRunner?
51. What are all the different DB that WinRunner can support?
52. How do you set a Query to get/fetch data from the DB?
53. How TSL looks like?
54. What are all the default codes WinRunner will generates when you start an application?
55. What are the other codes you can write/call with in TSL? 56. What are all the different languages can be called using TSL in between the scripts?
57. How do you handle an Exception in WinRunner?
58. Types of Exception available in WinRunner?
59. How do you define an Exception for complete application or for a particular function?
60. How do you run tests on a new version of WinRunner?
61. What are data driven tests & How Do you create it in WinRunner?
62. What’s the File Format used in Data Table?
63. How do you link a Data Table in your script?
64. How do you read text from an application?
65. What is a batch test? How do you program a batch test?
66. What happens when user interface changes?
67. Does load testing possible using WinRunner?
68. Does WinRunner help you in web testing?
69. How do you manage test data, test result?
70. Questions on TSL: How to generate Functions?
71. Running tests from the command line?
72. Explain WinRunner Testing Modes?
73. Have you completed the CPS exam? Which one?
74. Write a short compiled module which selects random numbers; and what function is used to call your customized compiled module?
75. What’s the purpose of the wrun.ini file?
All the answers to these interview questions are given in the WinRunner User Guide (PDF)& WinRunner Tutorial (PDF) which comes along with WinRunner License Version.

Load Testing interview questions:

1.What criteria would you use to select Web transactions for

load testing?

2.For what purpose are virtual users created?

3.Why it is recommended to add verification checks to your

 all your scenarios?

4.In what situation would you want to parameterize a

text verification check?

5.Why do you need to parameterize fields in your virtual user script?

6.What are the reasons why parameterization is necessary when

 load testing  the Web server and the database server?

7.How can data caching have a negative effect on load testing results?

8.What usually indicates that your virtual user script has

 dynamic data that is dependent on you parameterized fields?

9.What are the benefits of creating multiple actions within

any virtual user script?

10. What is a Load Test Results Summary Report?   General interview questions QA for Software testers and QA professionals: 

1.  What types of documents would you need for QA, QC, and Software Testing?

2.  What did you include in a test plan? 

3.  Describe any bug you remember.

4.  What is the purpose of the software testing?

5.  What do you like (not like) in this job? 

6.  What is QA (quality assurance)?

7.  What is the difference between QA and software testing?    Read the answer for this 
interview question    for software testers

8.  How do you scope, organize, and execute a test project?

9.  What is the role of QA in a development project? 

10. What is the role of QA in a company that produces software?

11. Define quality for me as you understand it

12. Describe to me the difference between validation and verification.

13. Describe to me what you see as a process. Not a particular process, just the basics of having a process.

14. Describe to me when you would consider employing a failure mode and effect analysis.

15. Describe to me the Software Development Life Cycle as you would define it.

16. What are the properties of a good requirement? 

17. How do you differentiate the roles of Quality Assurance Manager and Project Manager?

18. Tell me about any quality efforts you have overseen or
implemented. Describe some of the challenges you faced and how you
overcame them. 
19. How do you deal with environments that are hostile to quality change efforts?

20. In general, how do you see automation fitting into the overall process of testing? 

21. How do you promote the concept of phase containment and defect prevention? 

22. If you come onboard, give me a general idea of what your first overall tasks will be as far as starting a quality effort.

23. What kinds of software testing have you done?

24. Have you ever created a test plan? 

25. Have you ever written test cases or did you just execute those written by others?

26. What did your base your test cases?

27. How do you determine what to test? 

28. How do you decide when you have 'tested enough?' 

29. How do you test if you have minimal or no documentation about the product?

30. Describe me to the basic elements you put in a defect report?

31. How do you perform regression testing of software? 

32. At what stage of the life cycle does testing begin in your opinion? 

33. How do you analyze your test results? What metrics do you try to provide?

34. Realising you won't be able to test everything - how do you decide what to test first? 

35. Where do you get your expected results? 

36. If automating - what is your process for determining what to automate and in what order?

37. In the past, I have been asked to verbally start mapping out a
test plan for a common situation, such as an ATM. The interviewer might
say, "Just thinking out loud, if you were tasked to test an ATM, what
items might you test plan include?" These type questions are not meant
to be answered conclusively, but it is a good way for the interviewer
to see how you approach the task.

38. If you're given a program that will average student grades, what kinds of inputs would you use?

39. Tell me about the best bug you ever found.

40. What made you pick software testing over another career? 

41. What is the exact difference between Integration & System testing, give me examples with your project.

42. How did you go about software testing a project?

43. When should software testing start in a project? Why?

44. How do you go about testing a web application?

45. Difference between Black & White box software testing

46. What is Configuration management? Tools used?

47. What do you plan to become after say 2-5yrs (Ex: QA Manager, Why?)

48. Would you like to work in a team or alone, why?

49. Give me 5 strong & weak points of yours

50. Why do you want to join our company?

51. When should software testing be stopped?

52. What sort of things would you put down in a bug report? 

53. Who in the company is responsible for Quality?

54. Who defines quality? 

55. What is an equivalence class? 

56. Is a "A fast database retrieval rate" a testable requirement? 

57. Should we test every possible combination/scenario for a program? 

58. What criteria do you use when determining when to automate a test or leave it manual? 

59. When do you start developing your automation tests? 

60. Discuss what test metrics you feel are important to publish an organization?

61. In case anybody cares, here are the questions that I will be asking: 

62. Describe the role that QA plays in the software lifecycle. 

63. What should Development require of QA? 

64. What should QA require of Development? 

65. How would you define a "bug?" 

66. Give me an example of the best and worst experiences you've had with QA. 

67. How does unit testing play a role in the development / software lifecycle? 

68. Explain some techniques for developing software components with respect to testability. 

69. Describe a past experience with implementing a test harness in the development of software. 

70. Have you ever worked with QA in developing test tools? Explain the participation 

Development should have with QA in leveraging such test tools for QA use. 

71. Give me some examples of how you have participated in Integration Testing. 

72. How would you describe the involvement you have had with the bug-fix cycle between Development and QA?

72. What is unit testing?

73. Describe your personal software development process.

74. How do you know when your code has met specifications?

75. How do you know your code has met specifications when there are no specifications?

76. Describe your experiences with code analyzers.

77. How do you feel about cyclomatic complexity?

78. Who should test your code?

79.How do you survive chaos?

80. What processes/methodologies are you familiar with?

81. What type of documents would you need for  QA/QC/Software Testing?

82. How can you use technology to solve problem?

83. What type of metrics would you use?

84. How to find that tools work well with your existing system?

85. What automated tools are you familiar with?

86. How well you work with a team?

87. How would you ensure 100% coverage during software testing?

88. How would you build a test team?

89. What problem you have right now or in the past? How you solved it?

90. What you will do during the first day of job? 

91. What would you like to do five years from now?

92. Tell me about the worst boss you've ever had.

93. What are your greatest weaknesses?

94. What are your strengths?

95. What is a successful product?

96. What do you like about Windows?

97. What is good code?

98. Who is Kent Beck, Dr Grace Hopper, Dennis Ritchie?

99. What are basic, core, practises for a QA specialist?

100. What do you like about QA?

101. What has not worked well in your previous QA experience and what would you change?

102. How you will begin to improve the QA process?

103. What is the difference between QA and QC?

104. What is UML and how to use it for software testing?

105. What is CMM and CMMI? What is the difference?

106. What do you like about computers?

107. Do you have a favourite QA book? More than one? Which ones? And why.

108. What is the responsibility of programmers vs QA?

109.What are the properties of a good requirement?

110.Ho to do test if we have minimal or no documentation about the product? 

111.What are all the basic elements in a defect report? 

112.Is an "A fast database retrieval rate" a testable requirement?

113.Why should you care about objects and object-oriented testing?

114. What does 100% statement coverage mean? 

115. How do you perform configuration management with typical revision 
control systems? 

116. What is code coverage?

117. What types of code coverage do you know?

118. What tools can be used for code coverage analysis?

119. Is any graph is used for code coverage analysis? 

120. At what stage of the development cycle software errors are least costly to correct?

121. What can you tell about the project if during testing you found 80 bugs in it?

122. How to monitor test progress?

123. Describe a few reasons that a bug might not be fixed.

124. What are the possible states of software bug�s life cycle?

125. What books about QA (software testing) did you read?

126. What type of testing based specifically on a program code?

127. What type of testing based on any document that describes the "structure of the software"?

128. Please describe test design techniques like: state-transition diagrams, decision tables, activity diagrams.

129. Describe business process testing and what test design technique would you use for it?     Good interview questions QA from Cem Kaner article: "Recruiting testers" December 1999

1.  What is software quality assurance? 

2.  What is the value of a testing group? How do you justify your work and budget? 

3.  What is the role of the test group vis-à­¶is documentation, tech support, and so forth? 

4.  How much interaction with users should testers have, and why? 

5.  How should you learn about problems discovered in the field, and what should you learn from those problems? 

6.  What are the roles of glass-box and black-box testing tools? 

7.  What issues come up in test automation, and how do you manage them? 

8.  What development model should programmers and the test group use? 

9.  How do you get programmers to build testability support into their code? 

10. What is the role of a bug tracking system? 

11. What are the key challenges of software testing? 

12. Have you ever completely tested any part of a product? How? 

13. Have you done exploratory or specification-driven testing? 

14. Should every business test its software the same way? 

15. Discuss the economics of automation and the role of metrics in testing. 

16. Describe components of a typical test plan, such as tools for
interactive products and for database products, as well as
cause-and-effect graphs and data-flow diagrams. 
17. When have you had to focus on data integrity? 

18. What are some of the typical bugs you encountered in your last assignment? 

19. How do you prioritize testing tasks within a project? 

20. How do you develop a test plan and schedule? Describe bottom-up and top-down approaches. 



Here are some interview questions you might be asked on a job interview for a testing opening: (sample from MU COSC 198 Software Testing by Dr. Corliss)

  1. Why did you ever become involved in QA/software testing?
  2. What is the software testing lifecycle and explain each of its phases?
  3. What is the difference between testing and QA (Quality Assurance)?
  4. What is Negative testing?
  5. What was a problem you had in your previous assignment (testing if possible)? How did you resolve it?
  6. What are two of your strengths that you will bring to our QA/testing team?
  7. How would you define (QA) Quality Assurance?
  8. What do you like most about Quality Assurance/Software Testing?
  9. What do you like least about Quality Assurance/Testing?
  10. What is the Waterfall Development Method and do you agree with all the steps?
  11. What is the V-Model Development Method and do you agree with this model?
  12. What is the Capability Maturity Model (CMM)? At what CMM level were the last few companies you worked?
  13. What is a “Good Software Tester”?
  14. Could you tell me two things you did in your previous assignment (QA/Testing related hopefully) that you are proud of?
  15. List 5 words that best describe your strengths.
  16. What are two of your weaknesses?
  17. What methodologies have you used to develop test cases?
  18. In an application currently in production, one module of code is being modified. Is it necessary to re- test the whole application or is it enough to just test functionality associated with that module?
  19. Define each of the following and explain how each relates to the other: Unit, System, and Integration testing.
  20. Define Verification and Validation. Explain the differences between the two.
  21. Explain the differences between White-box, Gray-box, and Black-box testing.
  22. How do you go about going into a new organization? How do you assimilate?
  23. Define the following and explain their usefulness: Change Management, Configuration Management, Version Control, and Defect Tracking.
  24. What is ISO 9000? Have you ever been in an ISO shop?
  25. When are you done testing?
  26. What is the difference between a test strategy and a test plan?
  27. What is ISO 9003? Why is it important
  28. What are ISO standards? Why are they important?
  29. What is IEEE 829? (This standard is important for Software Test Documentation-Why?)
  30. What is IEEE? Why is it important?
  31. Do you support automated testing? Why?
  32. We have a testing assignment that is time-driven. Do you think automated tests are the best solution?
  33. What is your experience with change control? Our development team has only 10 members. Do you think managing change is such a big deal for us?
  34. Are reusable test cases a big plus of automated testing and explain why.
  35. Can you build a good audit trail using Compuware’s QA Center products. Explain why.

Questions to ask during an interview

  1. What is the structure of the company?
  2. Who is going to do the interview-possible background information of interviewer?
  3. What is the employer’s environment (platforms, tools, etc.)?
  4. What are the employer’s methods and processes used in software arena?
  5. What is the employer’s philosophy?
  6. What is the project all about you are interviewing for-as much information as possible.
  7. Any terminologies that the company may use.
  8. What is the structure of the software testing team?
  9. What are the responsibilities of the software testing team members?
  10. How many computers are in the software testing lab?
  11. What kinds of software testing tools are installed in the software testing lab?
  12. What is the ratio between software developers and testers in the company?
  13. What development and QA methodologies is the company using?

Software Testing Guide

Explain Peer Review in Software Testing

It is an alternative form of Testing, where some colleagues were invited to examine your work products for defects and improvement opportunities.

Some Peer review approaches are,

Inspection – It is a more systematic and rigorous type of peer review. Inspections are more effective at finding defects than are informal reviews.

Ex : In Motorola’s Iridium project nearly 80% of the defects were detected through inspections where only 60% of the defects were detected through informal reviews.

Team Reviews – It is a planned and structured approach but less formal and less rigorous comparing to Inspections.

Walkthrough – It is an informal review because the work product’s author describes it to some colleagues and asks for suggestions. Walkthroughs are informal because they typically do not follow a defined procedure, do not specify exit criteria, require no management reporting, and generate no metrics.

Pair Programming – In Pair Programming, two developers work together on the same program at a single workstation and continuously reviewing their work.

Peer Deskcheck – In Peer Deskcheck only one person besides the author examines the work product. It is an informal review, where the reviewer can use defect checklists and some analysis methods to increase the effectiveness.

Passaround – It is a multiple, concurrent peer deskcheck where several people are invited to provide comments on the product.

Explain Compatibility Testing with an example.

Compatibility testing is to evaluate the application compatibility with the computing environment like Operating System, Database, Browser compatibility, Backwards compatibility, Computing capacity of the Hardware Platform and compatibility of the Peripherals.

Ex : If Compatibility testing is done on a Game application, before installing a game on a computer, its compatibility is checked with the computer specification that whether it is compatible with the computer having that much of specification or not.

What is Traceability Matrix ?

Traceability Matrix is a document used for tracking the requirement, Test cases and the defect. This document is prepared to make the clients satisfy that the coverage done is complete as end to end, This document consists of Requirement/Base line doc Ref No., Test case/Condition, Defects/Bug id. Using this document the person can track the Requirement based on the Defect id.

Explain Load, Performance, Stress Testing with an example

Load Testing and Performance Testing are commonly said as positive testing where as Stress Testing is said to be as negative testing.

Say for example there is a application which can handle 25 simultaneous user logins at a time. In load testing we will test the application for 25 users and check how application is working in this stage, in performance testing we will concentrate on the time taken to perform the operation. Where as in stress testing we will test with more users than 25 and the test will continue to any number and we will check where the application is cracking the Hardware resources.

Explain Boundary value testing and Equivalence testing with some examples.

Boundary value testing is a technique to find whether the application is accepting the expected range of values and rejecting the values which falls out of range.

Ex. A user ID text box has to accept alphabet characters ( a-z ) with length of 4 to 10 characters.

BVA is done like this, max value:10 pass; max-1: 9 pass;

max+1=11 fail ;min=4 pass;min+1=5 pass;min-1=3 fail;

Like wise we check the corner values and come out with a conclusion whether the application is accepting correct range of values.

Equivalence testing is normally used to check the type of the object.

Ex. A user ID text box has to accept alphabet characters ( a – z ) with length of 4 to 10 characters.

In +ve condition we have test the object by giving alphabets. i.e a-z char only, after that we need to check whether the object accepts the value, it will pass.

In -ve condition we have to test by giving other than alphabets (a-z) i.e A-Z,0-9,blank etc, it will fail.

What is Security testing?

It is a process used to look out whether the security features of a system are implemented as designed and also whether they are adequate for a proposed application environment. This process involves functional testing, penetration testing and verification.

What is Installation testing?

Installation testing is done to verify whether the hardware and software are installed and configured properly. This will ensure that all the system components were used during the testing process. This Installation testing will look out the testing for a high volume data, error messages as well as security testing.

What is AUT ?

AUT is nothing but “Application Under Test”. After the designing and coding phase in Software development life cycle, the application comes for testing then at that time the application is stated as Application Under Test.

What is Defect Leakage ?

Defect leakage occurs at the Customer or the End user side after the application delivery. After the release of the application to the client, if the end user gets any type of defects by using that application then it is called as Defect leakage. This Defect Leakage is also called as Bug Leak.

What are the contents in an effective Bug report?

Project, Subject, Description, Summary, Detected By (Name of the Tester), Assigned To (Name of the Developer who is supposed to the Bug), Test Lead ( Name ), Detected in Version, Closed in Version, Date Detected, Expected Date of Closure, Actual Date of Closure, Priority (Medium, Low, High, Urgent), Severity (Ranges from 1 to 5), Status, Bug ID, Attachment, Test Case Failed (Test case that is failed for the Bug)

What is Bug Life Cycle?

Bug Life Cycle is nothing but the various phases a Bug undergoes after it is raised or reported.

·                     New or Opened

·                     Assigned

·                     Fixed

·                     Tested

·                     Closed

 

What is Error guessing and Error seeding ?

Error Guessing is a test case design technique where the tester has to guess what faults might occur and to design the tests to represent them.

Error Seeding is the process of adding known faults intentionally in a program for the reason of monitoring the rate of detection & removal and also to estimate the number of faults remaining in the program.

What is the difference between Bug, Error and Defect?

Error : It is the Deviation from actual and the expected value.

Bug : It is found in the development environment before the product is shipped to the respective customer.

Defect : It is found in the product itself after it is shipped to the respective customer.

What is Test bed and Test data ?

Test Bed is an execution environment configured for software testing. It consists of specific hardware, network topology, Operating System, configuration of the product to be under test, system software and other applications. The Test Plan for a project should be developed from the test beds to be used.

Test Data is that run through a computer program to test the software. Test data can be used to test the compliance with effective controls in the software.

What is Negative testing?

Negative testing – Testing the system using negative data is called negative testing, e.g. testing the password where it should be minimum of 8 characters so testing it using 6 characters is negative testing.

What are SDLC and STLC ? Explain its different phases.

SDLC

·                     Requirement phase

·                     Designing phase (HLD, DLD (Program spec))

·                     Coding

·                     Testing

·                     Release

·                     Maintenance

STLC

·                     <!–[if !supportLists]–>System Study

·                     Test planning

·                     Writing Test case or scripts

·                     Review the test case

·                     Executing test case

·                     Bug tracking

·                     Report the defect

 

What is Ad-hoc testing?

Ad hoc testing is concern with the Application Testing without following any rules or test cases.

For Ad hoc testing one should have strong knowledge about the Application.

Describe bottom-up and top-down approaches in Regression Testing.

Bottom-up approach : In this approach testing is conducted from sub module to main module, if the main module is not developed a temporary program called DRIVERS is used to simulate the main module.

Top-down approach : In this approach testing is conducted from main module to sub module. if the sub module is not developed a temporary program called STUB is used for simulate the submodule.

What is the difference between structural and functional testing?

Structural testing is a “white box” testing and it is based on the algorithm or code.

Functional testing is a “black box” (behavioral) testing where the tester verifies the functional specification.

What is Re- test ? What is Regression Testing ?

Re- test – Retesting means we testing only the certain part of an application again and not considering how it will effect in the other part or in the whole application.

Regression Testing – Testing the application after a change in a module or part of the application for testing that is the code change will affect rest of the application.

What is UAT testing? When it is to be done?

UAT testing – UAT stands for ‘User acceptance Testing. This testing is carried out with the user perspective and it is usually done before the release.

What are the basic solutions for the software development problems?

·                     Basic requirements – clear, detailed, complete, achievable, testable requirements has to be developed. Use some prototypes to help pin down requirements. In nimble environments, continuous and close coordination with customers/end-users is needed.

·                     Schedules should be realistic – enough time to plan, design, test, bug fix, re-test, change, and document in the given schedule.

·                     Adequate testing – testing should be started early, it should be re-tested after the bug fixed or changed, enough time should be spend for testing and bug-fixing.

·                     Proper study on initial requirements – be ready to look after more changes after the development has begun and be ready to explain the changes done to others. Work closely with the customers and end-users to manage expectations. This avoids excessive changes in the later stages.

·                     Communication – conduct frequent inspections and walkthroughs in appropriate time period; ensure that the information and the documentation is available on up-to-date if possible electronic. More emphasize on promoting teamwork and cooperation inside the team; use prototypes and proper communication with the end-users to clarify their doubts and expectations.

 

What are the common problems in the software development process?

·         Inadequate requirements from the Client – if the requirements given by the client is not clear, unfinished and not testable, then problems may come.

·         Unrealistic schedules – Sometimes too much of work is being given to the developer and ask him to complete in a Short duration, then the problems are unavoidable.

·         Insufficient testing – The problems can arise when the developed software is not tested properly.

·         Given another work under the existing process – request from the higher management to work on another project or task will bring some problems when the project is being tested as a team.

·         Miscommunication – in some cases, the developer was not informed about the Clients requirement and expectations, so there can be deviations.

Why does software have bugs?

·         Miscommunication or no communication – about the details of what an application should or shouldn’t do

·         Programming errors – in some cases the programmers can make mistakes.

·         Changing requirements – there are chances of the end-user not understanding the effects of changes, or may understand and request them anyway to redesign, rescheduling of engineers, effects of other projects, work already completed may have to be redone or thrown out.

·         Time force – preparation of software projects is difficult at best, often requiring a lot of guesswork. When deadlines are given and the crisis comes, mistakes will be made.

What software testing types can be considered?

 

Black box testing – This type of testing doesn’t require any knowledge of the internal design or coding. These Tests are based on the requirements and functionality.

White box testing – This kind of testing is based on the knowledge of internal logic of a particular application code. The Testing is done based on the coverage of code statements, paths, conditions.

Unit testing – the ‘micro’ scale of testing; this is mostly used to test the particular functions or code modules. This is typically done by the programmer and not by testers; it requires detailed knowledge of the internal program design and code. It cannot be done easily unless the application has a well-designed architecture with tight code; this type may require developing test driver modules or test harnesses.

Sanity testing or Smoke testing – This type of testing is done initially to determine if a new software version is performing well enough to accept it for a major testing effort. For example, if the new software is crashing the systems in every 5 minutes or corrupting databases, the software may not be in a ‘sound’ condition to proceed for further testing in its current state.

Functional testing – This a commonly used black-box testing geared to check the functional requirements of an application; this type of testing should be done by testers.

Integration testing – This testing is combining the ‘parts’ of an application to determine if they function together correctly. The ‘parts’ can be code modules, individual applications, client and server applications on a network, etc. This type of testing is especially relevant to the client/server and distributed systems.

Incremental Integration testing – This is continuous testing of an application when a new functionality is added the existing ones; it checks the application functionality by verifying whether it works separately before all parts of the program are completed, in this type it will be checked whether to introduce test drivers or not; this is done by programmers or by testers.

Regression testing – This is testing the whole application again after the fixes or the modifications are done on the software. This is mostly done at the end of the Software development life cycle. Mostly Automated testing tools are used for these type of testing.

System testing – This is a type of black-box type testing that is based on overall requirements specifications; covers all combined parts of a system.

End-to-end testing – This is similar to system testing; this involves testing of a complete application environment such as interacting with a database, using network communications, or interacting with other hardware, applications and so on.

UAT ( User Acceptance Testing ) – This type of testing comes on the final stage and mostly done on the specifications of the end-user or client.

Usability testing – This testing is done to check the ‘user-friendliness’ of the application. This depends on the targeted end-user or customer. User interviews, surveys, video recording of user sessions, and other techniques can be used. Programmers and testers are usually not appropriate as usability testers.

Compatibility testing – Testing how well the software performs in a particular hardware, software, operating system, network etc.

Comparison testing – This is nothing comparing the software strengths and weakness with another competing product.

Mutation testing – This is another method for determining if a set of test data or test cases is useful, by purposely introducing various code changes or bugs and retesting with the original test data or cases to determine whether the ‘bugs’ are detected.

How do you decide when you have ‘tested enough’?

Common factors in deciding when to stop are:

·         Deadlines (release deadlines, testing deadlines, etc.)

·         Test cases completed with certain percentage passed

·         Test budget depleted

·         Coverage of code/functionality/requirements reaches a specified point

·         Bug rate falls below a certain level

·         Beta or alpha testing period ends

Describe the Software Development Life Cycle

It includes aspects such as initial concept, requirements analysis, functional design, internal design, documentation planning, test planning, coding, document preparation, integration, testing, maintenance, updates, retesting, phase-out, and other aspects.

Describe the difference between validation and verification

Verification is done by frequent evaluation and meetings to appraise the documents, policy, code, requirements, and specifications. This is done with the checklists, walkthroughs, and inspection meetings.

Validation is done during actual testing and it takes place after all the verifications are being done.

What is the difference between QA and testing?

Testing involves operation of a system or application under controlled conditions and evaluating the results. It is oriented to ‘detection’.

Software QA involves the entire software development PROCESS – monitoring and improving the process, making sure that any agreed-upon standards and procedures are followed, and ensuring that problems are found and dealt with. It is oriented to ‘prevention’.

What is quality assurance?

Software QA involves the entire software development PROCESS – monitoring and improving the process, making sure that any agreed-upon standards and procedures are followed, and ensuring that problems are found and dealt with. It is oriented to ‘prevention’.

What is the purpose of the testing?

Software testing is the process used to help identify the Correctness, Completeness, Security and Quality of the developed Computer Software.

Software Testing is the process of executing a program or system with the intent of finding errors.

What is Bug Life Cycle?

Bug Life Cycle is nothing but the various phases a Bug undergoes after it is raised or reported.

·         New or Opened

·         Assigned

·         Fixed

·         Tested

·        Closed

Testing Techniques

Testing Techniques
Black – Box Testing
In using this strategy, the tester views the program as a black – box, tester doesn’t see the code of the program: Equivalence partitioning, Boundary – value analysis, Error guessing, AdHoc Approach.
White – Box Testing
In using this strategy, the tester examine the internal structure of the program: Statement coverage, Decision coverage, condition coverage, Decision/Condition coverage, Multiple – condition coverage
Categories: Testing Techniques

Web Testing

Let’s have first web testing checklist.
1) Functionality Testing
2) Usability testing
3) Interface testing
4) Compatibility testing
5) Performance testing
6) Security testing

Categories: Web Testing

ISO standards

About ISO

ISO (International Organization for Standardization) is the world’s largest developer and publisher of International Standards.

ISO is a network of the national standards institutes of 157 countries, one member per country, with a Central Secretariat in Geneva, Switzerland, that coordinates the system.

ISO is a non-governmental organization that forms a bridge between the public and private sectors. On the one hand, many of its member institutes are part of the governmental structure of their countries, or are mandated by their government. On the other hand, other members have their roots uniquely in the private sector, having been set up by national partnerships of industry associations.

Therefore, ISO enables a consensus to be reached on solutions that meet both the requirements of business and the broader needs of society.

ISO’s name

Because “International Organization for Standardization” would have different acronyms in different languages (“IOS” in English, “OIN” in French for Organisation internationale de normalisation), its founders decided to give it also a short, all-purpose name. They chose “ISO”, derived from the Greek isos, meaning “equal”. Whatever the country, whatever the language, the short form of the organization’s name is always ISO.

Why standards matter

Standards make an enormous and positive contribution to most aspects of our lives.

Standards ensure desirable characteristics of products and services such as quality, environmental friendliness, safety, reliability, efficiency and interchangeability – and at an economical cost.

When products and services meet our expectations, we tend to take this for granted and be unaware of the role of standards. However, when standards are absent, we soon notice. We soon care when products turn out to be of poor quality, do not fit, are incompatible with equipment that we already have, are unreliable or dangerous.

When products, systems, machinery and devices work well and safely, it is often because they meet standards. And the organization responsible for many thousands of the standards which benefit the world is ISO.

When standards are absent, we soon notice.

What standards do

ISO standards:

  • make the development, manufacturing and supply of products and services more efficient, safer and cleaner
  • facilitate trade between countries and make it fairer
  • provide governments with a technical base for health, safety and environmental legislation, and conformity assessment
  • share technological advances and good management practice
  • disseminate innovation
  • safeguard consumers, and users in general, of products and services
  • make life simpler by providing solutions to common problems

Who standards benefit

ISO standards provide technological, economic and societal benefits.

For businesses, the widespread adoption of International Standards means that suppliers can develop and offer products and services meeting specifications that have wide international acceptance in their sectors. Therefore, businesses using International Standards can compete on many more markets around the world.

For innovators of new technologies, International Standards on aspects like terminology, compatibility and safety speed up the dissemination of innovations and their development into manufacturable and marketable products.

For customers, the worldwide compatibility of technology which is achieved when products and services are based on International Standards gives them a broad choice of offers. They also benefit from the effects of competition among suppliers.

For governments, International Standards provide the technological and scientific bases underpinning health, safety and environmental legislation.

For trade officials, International Standards create “a level playing field” for all competitors on those markets. The existence of divergent national or regional standards can create technical barriers to trade. International Standards are the technical means by which political trade agreements can be put into practice.

For developing countries, International Standards that represent an international consensus on the state of the art are an important source of technological know-how. By defining the characteristics that products and services will be expected to meet on export markets, International Standards give developing countries a basis for making the right decisions when investing their scarce resources and thus avoid squandering them.

For consumers, conformity of products and services to International Standards provides assurance about their quality, safety and reliability.

For everyone, International Standards contribute to the quality of life in general by ensuring that the transport, machinery and tools we use are safe.

For the planet we inhabit, International Standards on air, water and soil quality, on emissions of gases and radiation and environmental aspects of products can contribute to efforts to preserve the environment.

The ISO brand

  • Democratic

Every full member of ISO has the right to take part in the development of any standard which it judges to be important to its country’s economy. No matter what the size or strength of that economy, each participating member in ISO has one vote. Each country is on an equal footing to influence the direction of ISO’s work at the strategic level, as well as the technical content of its individual standards.

  • Voluntary

ISO standards are voluntary. As a non-governmental organization, ISO has no legal authority to enforce the implementation of its standards. ISO does not regulate or legislate. However, countries may decide to adopt ISO standards – mainly those concerned with health, safety or the environment – as regulations or refer to them in legislation, for which they provide the technical basis. In addition, although ISO standards are voluntary, they may become a market requirement, as has happened in the case of ISO 9001 quality management systems, or of dimensions of freight containers and bank cards.

ISO itself does not regulate or legislate.

  • Market-driven

ISO only develops standards for which there is a market requirement. The work is mainly carried out by experts from the industrial, technical and business sectors which have asked for the standards, and which subsequently put them to use.

  • Consensus

ISO standards are based on international consensus among the experts in the field. Consensus, like technology, evolves and ISO takes account both of evolving technology and of evolving interests by requiring a periodic review of its standards at least every five years to decide whether they should be maintained, updated or withdrawn. In this way, ISO standards retain their position as the state of the art.

  • Globally relevant

ISO standards are technical agreements which provide the framework for compatible technology worldwide. They are designed to be globally relevant – useful everywhere in the world.

ISO standards are useful everywhere in the world.

How to recognize an ISO standard

In paper form, an ISO standard is published in A4 format – which is itself one of the ISO standard paper sizes. It may be anywhere between a four-page document and one several hundred pages’ long. ISO standards are also available as electronic downloads and many are available as part of a collection on CD or in handbook. An ISO standard carries the ISO logo and the designation, “International Standard”.

The scope of ISO’s work

ISO has more than 16 500 International Standards and other types of normative documents in its current portfolio. ISO’s work programme ranges from standards for traditional activities, such as agriculture and construction, through mechanical engineering, manufacturing and distribution, to transport, medical devices, information and communication technologies, and to standards for good management practice and for services.

Examples of the benefits standards provide

Standardization of screw threads helps to keep chairs, children’s bicycles and aircraft together and solves the repair and maintenance problems caused by a lack of standardization that were once a major headache for manufacturers and product users.

Standards establishing an international consensus on terminology make technology transfer easier and safer. They are an important stage in the advancement of new technologies and dissemination of innovation.

Without the standardized dimensions of freight containers, international trade would be slower and more expensive.

Without the standardization of telephone and banking cards, life would be more complicated.

A lack of standardization may even affect the quality of life itself: for the disabled, for example, when they are barred access to consumer products, public transport and buildings because the dimensions of wheel-chairs and entrances are not standardized.

Standardized symbols provide danger warnings and information across linguistic frontiers.

Consensus on grades of various materials gives a common reference for suppliers and clients in business dealings.

Agreement on a sufficient number of variations of a product to meet most current applications allows economies of scale with cost benefits for both producers and consumers. An example is the standardization of paper sizes.

Standardization of performance or safety requirements of diverse equipment makes sure that users’ needs are met while allowing individual manufacturers the freedom to design their own solution on how to meet those needs.

Standardized computer protocols allow products from different vendors to “talk” to each other.

Standardized documents speed up the transit of goods, or identify sensitive or dangerous cargoes that may be handled by people speaking different languages.

Standardization of connections and interfaces of all types ensures the compatibility of equipment of diverse origins and the interoperability of different technologies.

Agreement on test methods allows meaningful comparisons of products, or plays an important part in controlling pollution – whether by noise, vibration or emissions.

Safety standards for machinery protect people at work, at play, at sea… and at the dentist’s.

Without the international agreement contained in ISO standards on metric quantities and units, shopping and trade would be haphazard, science would be unscientific and technological development would be handicapped.

  • For more examples of the many areas of life and work where ISO standards provide technical, economic and social benefits, visit The ISO Café.

What’s different about ISO 9001 and ISO 14001

The vast majority of ISO standards are highly specific to a particular product, material, or process. However, ISO 9001 (quality) and ISO 14001 (environment) are “generic management system standards”. “Generic” means that the same standard can be applied to any organization, large or small, whatever its product or service, in any sector of activity, and whether it is a business enterprise, a public administration, or a government department. ISO 9001 contains a generic set of requirements for implementing a quality management system and ISO 14001 for an environmental management system.

Generic standards can be applied to any organization.

Why conformity assessment is important

“Conformity assessment” means checking that products, materials, services, systems, processes or people measure up to the specifications of a relevant standard or specification. Today, many products require testing for conformity with specifications or compliance with safety, or other regulations before they can be put on many markets. ISO guides and standards for conformity assessment represent an international consensus on best practice. Their use contributes to the consistency of conformity assessment worldwide and so facilitates trade.

  • See ISO’s Conformity assessment pages for more detailed information.

What “international standardization” means

When the large majority of products or services in a particular business or industry sector conform to International Standards, a state of industry-wide standardization exists. The economic stakeholders concerned agree on specifications and criteria to be applied consistently in the classification of materials, in the manufacture and supply of products, in testing and analysis, in terminology and in the provision of services. In this way, International Standards provide a reference framework, or a common technological language, between suppliers and their customers. This facilitates trade and the transfer of technology.

ISO’s origins

In 1946, delegates from 25 countries met in London and decided to create a new international organization, of which the object would be “to facilitate the international coordination and unification of industrial standards”. The new organization, ISO, officially began operations on 23 February 1947, in Geneva, Switzerland.

  • Read The ISO Story for a historical perspective of ISO.

Who can join ISO

Membership of ISO is open to national standards institutes most representative of standardization in their country (one member in each country).

  • Full members, known as member bodies, each have one vote, whatever the size or strength of the economy of the country concerned.
  • Correspondent members pay reduced membership fees. They are entitled to participate in any policy or technical body as observers, with no voting rights.
  • Subscriber members also pay reduced membership fees. They are institutes from countries with very small economies that nevertheless wish to maintain contact with international standardization.

Although individuals or enterprises are not eligible for membership, both have a range of opportunities for taking part in ISO’s work:

  • Individuals may be selected by national member institutes to serve as experts on national delegations participating in ISO technical committees
  • Individuals and enterprises may provide their input during the process of developing a national consensus for presentation by the delegation. This may done through national mirror committees to the corresponding ISO technical committee
  • International organizations and associations, both non-governmental and representing industry sectors, can apply for liaison status to a technical committee. They do not vote, but can participate in the debates and the development of consensus.

There is a range of opportunities for taking part in ISO’s work.

How the ISO system is managed

All strategic decisions are referred to the ISO members, who meet for an annual General Assembly. The proposals put to the members are developed by the ISO Council, drawn from the membership as a whole, which resembles the board of directors of a business organization.

ISO Council meets twice a year and its membership is rotated to ensure that it is representative of ISO’s membership.

ISO’s operations are managed by a Secretary-General, which is a permanent appointment resembling the chief executive of a business enterprise. The Secretary-General reports to the ISO Council, the latter being chaired by the President who is a prominent figure in standardization or in business, elected for two years.

The Secretary-General is based at ISO Central Secretariat in Geneva, Switzerland, with a compact staff which provides administrative and technical support to the ISO members, coordinates the decentralized standards’ development programme, and publishes the output.

How the ISO system is financed

ISO’s national members pay subscriptions that meet the operational cost of ISO’s Central Secretariat. The subscription paid by each member is in proportion to the country’s Gross National Income and trade figures. Another source of revenue is the sale of standards.

However, the operations of ISO Central Secretariat represent only about one fifth of the cost of the system’s operation. The main costs are borne by the member bodies that manage the specific standards development projects and the business organizations that provide experts to participate in the technical work. These organizations are, in effect, subsidizing the technical work by paying the travel costs of the experts and allowing them time to work on their ISO assignments.

How ISO decides to develop a standard

ISO launches the development of new standards in response to the sectors that express a clearly established need for them. An industry or business sector communicates its requirement for a standard to one of ISO’s national members. The latter then proposes the new work item to ISO as a whole. If accepted, the work item is assigned to an existing technical committee. Proposals may also be made to set up technical committees to cover new scopes of activity.

At the end of 2006, there were 3 041 technical bodies in the ISO system, including 193 ISO technical committees.

The focus of the technical committees is specialized and specific. In addition, ISO has three general policy development committees that provide strategic guidance for the standards’ development work on cross-sector aspects. These committees ensure that the specific technical work is aligned with broader market and stakeholder group interests. They are:

  • CASCO (conformity assessment)
  • COPOLCO (consumer policy), and
  • DEVCO (developing country matters)

Who develops ISO standards

ISO standards are developed by technical committees comprising experts from the industrial, technical and business sectors which have asked for the standards, and which subsequently put them to use. These experts may be joined by representatives of government agencies, testing laboratories, consumer associations, non-governmental organizations and academic circles.

The experts participate as national delegations, chosen by the ISO national member institute for the country concerned. These delegations are required to represent not just the views of the organizations in which their participating experts work, but of other stakeholders too.

According to ISO rules, the member institute is expected to take account of the views of the range of parties interested in the standard under development. This enables them to present a consolidated, national consensus position to the technical committee.

ISO standards are developed by experts from the sectors which have asked for them.

How ISO standards are developed

The national delegations of experts of a technical committee meet to discuss, debate and argue until they reach consensus on a draft agreement. This is circulated as a Draft International Standard (DIS) to ISO’s membership as a whole for comment and balloting.

Many members have public review procedures for making draft standards known and available to interested parties and to the general public. The ISO members then take account of any feedback they receive in formulating their position on the draft standard.

If the voting is in favour, the document, with eventual modifications, is circulated to the ISO members as a Final Draft International Standard (FDIS). If that vote is positive, the document is then published as an International Standard.

Every working day of the year, an average of eight ISO meetings are taking place somewhere in the world. In between meetings, the experts continue the standards’ development work by correspondence. Increasingly, their contacts are made by electronic means and some ISO technical bodies have already gone over entirely to working electronically, which speeds up the development of standards and cuts travel costs.

  • See Stages of the development of an International Standard for more detail of the development process.

ISO’s international partners

ISO collaborates with its partners in international standardization, the International Electrotechnical Commission (IEC) and International Telecommunication Union (ITU). The three organizations, all based in Geneva, Switzerland, have formed the World Standards Cooperation (WSC) to act as a strategic focus for collaboration and the promotion of international standardization.

ISO has a close relationship with the World Trade Organization (WTO) which particularly appreciates the contribution of ISO’s standards to reducing technical barriers to trade.

ISO collaborates with the United Nations (UN) Organization and its specialized agencies and commissions, particularly those involved in the harmonization of regulations and public policies, such as:

  • CODEX Alimentarius, on food safety measurement, management and traceability
  • UN Economic Commission for Europe (UN/ECE), on the safety of motor vehicles and the transportation of dangerous goods
  • World Health Organization (WHO), on health technologies
  • International Maritime Organization (IMO), on transport security
  • World Tourism Organization (UNWTO), on the quality of services related to tourism.

In addition, ISO cooperates with UN organizations that provide assistance and support to developing countries, such as the United Nations Conference on Trade and Development (UNCTAD), the United Nations Industrial Development Organization (UNIDO) and the International Trade Centre (ITC).

ISO’s technical committees have formal liaison relations with over 600 international and regional organizations.

ISO has reinforced its links, too, with international organizations representing different groups of stakeholders, including:

  • World Economic Forum (WEF)
  • Consumers International (CI)
  • World Business Council for Sustainable Development (WBCSD), and
  • International Federation of Standards Users (IFAN).

Lastly, ISO also collaborates regularly with the major international organizations for metrology, quality and conformity assessment.

ISO’s regional partners

Many of ISO’s members also belong to regional standardization organizations. ISO has recognized regional standards organizations representing Africa, the Arab countries, the area covered by the Commonwealth of Independent States, Europe, Latin America, the Pacific area, and the South-East Asia nations. The regional bodies (listed below) commit themselves to adopt ISO standards as the national standards of their members.

  • African Regional Organization for Standardization (ARSO)
  • Arab Industrial Development and Mining Organization (AIDMO)
  • European Committee for Standardization (CEN)
  • Pan American Standards Commission (COPANT)
  • Euro Asian Council for Standardization, Metrology and Certification (EASC)
  • Pacific Area Standards Congress (PASC)
  • ASEAN Consultative Committee for Standards and Quality (ACCSQ)

<!–
last modified 2008-02-08

–>· SEI = ‘Software Engineering Institute’ at Carnegie-Mellon University; initiated by the U.S. Defense Department to help improve software development processes.

· CMM = ‘Capability Maturity Model’, developed by the SEI. It’s a model of 5 levels of organizational ‘maturity’ that determine effectiveness in delivering quality software. It is geared to large organizations such as large U.S. Defense Department contractors. However, many of the QA processes involved are appropriate to any organization, and if reasonably applied can be helpful. Organizations can receive CMM ratings by undergoing assessments by qualified auditors.

Level 1 – characterized by chaos, periodic panics, and heroic efforts required by individuals to successfully complete projects. Few if any processes in place; successes may not be repeatable.

Level 2 – software project tracking, requirements management, realistic planning, and configuration management processes are in place; successful practices can be repeated.

Level 3 – standard software development and maintenance processes are integrated throughout an organization; a Software Engineering Process Group is in place to oversee software processes, and training programs are used to ensure understanding and compliance.

Level 4 – metrics are used to track productivity, processes, and products. Project performance is predictable, and quality is consistently high.

Level 5 – the focus is on continuous process improvement. The impact of new processes and technologies can be predicted and effectively implemented when required.

· ISO = ‘International Organization for Standards’ – The ISO 9001, 9002, and 9003 standards concern quality systems that are assessed by outside auditors, and they apply to many kinds of production and manufacturing organizations, not just software. The most comprehensive is 9001, and this is the one most often used by software development organizations. It covers documentation, design, development, production, testing, installation, servicing, and other processes. ISO 9000-3 (not the same as 9003) is a guideline for applying ISO 9001 to software development organizations. The U.S. version of the ISO 9000 series standards is exactly the same as the international version, and is called the ANSI/ASQ Q9000 series. The U.S. version can be purchased directly from the ASQ (American Society for Quality) or the ANSI organizations. To be ISO 9001 certified, a third-party auditor assesses an organization, and certification is typically good for about 3 years, after which a complete reassessment is required. Note that ISO 9000 certification does not necessarily indicate quality products – it indicates only that documented processes are followed.

· IEEE = ‘Institute of Electrical and Electronics Engineers’ – among other things, creates standards such as ‘IEEE Standard for Software Test Documentation’ (IEEE/ANSI Standard 829), ‘IEEE Standard of Software Unit Testing (IEEE/ANSI Standard 1008), ‘IEEE Standard for Software Quality Assurance Plans’ (IEEE/ANSI Standard 730), and others.

· ANSI = ‘American National Standards Institute’, the primary industrial standards body in the U.S.; publishes some software-related standards in conjunction with the IEEE and ASQ (American Society for Quality).

Categories: ISO standards Tags:

Automation Testing

Why Automation testing?
1) You have some new releases and bug fixes in working module. So how will you ensure that the new bug fixes have not introduced any new bug in previous working functionality? You need to test the previous functionality also. So will you test manually all the module functionality every time you have some bug fixes or new functionality addition? Well you might do it manually but then you are not doing testing effectively. Effective in terms of company cost, resources, Time etc. Here comes need of Automation.
– So automate your testing procedure when you have lot of regression work.

 

2) You are testing a web application where there might be thousands of users interacting with your application simultaneously. How will you test such a web application? How will you create those many users manually and simultaneously? Well very difficult task if done manually.
– Automate your load testing work for creating virtual users to check load capacity of your application.

3) You are testing application where code is changing frequently. You have almost same GUI but functional changes are more so testing rework is more.
– Automate your testing work when your GUI is almost frozen but you have lot of frequently functional changes.

What are the Risks associated in Automation Testing?
There are some distinct situations where you can think of automating your testing work. I have covered some risks of automation testing here. If you have taken decision of automation or are going to take sooner then think of following scenarios first.

1) Do you have skilled resources?
For automation you need to have persons having some programming knowledge. Think of your resources. Do they have sufficient programming knowledge for automation testing? If not do they have technical capabilities or programming background that they can easily adapt to the new technologies? Are you going to invest money to build a good automation team? If your answer is yes then only think to automate your work.

2) Initial cost for Automation is very high:
I agree that manual testing has too much cost associated to hire skilled manual testers. And if you are thinking automation will be the solution for you, Think twice. Automation cost is too high for initial setup i.e. cost associated to automation tool purchase, training and maintenance of test scripts is very high.
There are many unsatisfied customers regretting on their decision to automate their work. If you are spending too much and getting merely some good looking testing tools and some basic automation scripts then what is the use of automation?

3) Do not think to automate your UI if it is not fixed:
Beware before automating user interface. If user interface is changing extensively, cost associated with script maintenance will be very high. Basic UI automation is sufficient in such cases.

4) Is your application is stable enough to automate further testing work?
It would be bad idea to automate testing work in early development cycle (Unless it is agile environment). Script maintenance cost will be very high in such cases.

5) Are you thinking of 100% automation?
Please stop dreaming. You cannot 100% automate your testing work. Certainly you have areas like performance testing, regression testing, load/stress testing where you can have chance of reaching near to 100% automation. Areas like User interface, documentation, installation, compatibility and recovery where testing must be done manually.

6) Do not automate tests that run once:
Identify application areas and test cases that might be running once and not included in regression. Avoid automating such modules or test cases.

7) Will your automation suite be having long lifetime?
Every automation script suite should have enough life time that its building cost should be definitely less than that of manual execution cost. This is bit difficult to analyze the effective cost of each automation script suite. Approximately your automation suite should be used or run at least 15 to 20 times for separate builds (General assumption. depends on specific application complexity) to have good ROI.

Manual Testing Types

Software Testing Types:

Black box testing Internal system design is not considered in this type of testing. Tests are based on requirements and functionality.

White box testing This testing is based on knowledge of the internal logic of an application’s code. Also known as Glass box Testing. Internal software and code working should be known for this type of testing. Tests are based on coverage of code statements, branches, paths, conditions.

Unit testing – Testing of individual software components or modules. Typically done by the programmer and not by testers, as it requires detailed knowledge of the internal program design and code. may require developing test driver modules or test harnesses.

Incremental integration testing – Bottom up approach for testing i.e continuous testing of an application as new functionality is added; Application functionality and modules should be independent enough to test separately. done by programmers or by testers.

Integration testing – Testing of integrated modules to verify combined functionality after integration. Modules are typically code modules, individual applications, client and server applications on a network, etc. This type of testing is especially relevant to client/server and distributed systems.

Functional testing – This type of testing ignores the internal parts and focus on the output is as per requirement or not. Black-box type testing geared to functional requirements of an application.

System testing – Entire system is tested as per the requirements. Black-box type testing that is based on overall requirements specifications, covers all combined parts of a system.

End-to-end testing – Similar to system testing, involves testing of a complete application environment in a situation that mimics real-world use, such as interacting with a database, using network communications, or interacting with other hardware, applications, or systems if appropriate.

Sanity testing – Testing to determine if a new software version is performing well enough to accept it for a major testing effort. If application is crashing for initial use then system is not stable enough for further testing and build or application is assigned to fix.

Regression testing – Testing the application as a whole for the modification in any module or functionality. Difficult to cover all the system in regression testing so typically automation tools are used for these testing types.

Acceptance testing -Normally this type of testing is done to verify if system meets the customer specified requirements. User or customer do this testing to determine whether to accept application.

Load testing – Its a performance testing to check system behavior under load. Testing an application under heavy loads, such as testing of a web site under a range of loads to determine at what point the system’s response time degrades or fails.

Stress testing – System is stressed beyond its specifications to check how and when it fails. Performed under heavy load like putting large number beyond storage capacity, complex database queries, continuous input to system or database load.

Performance testing – Term often used interchangeably with ’stress’ and ‘load’ testing. To check whether system meets performance requirements. Used different performance and load tools to do this.

Usability testing – User-friendliness check. Application flow is tested, Can new user understand the application easily, Proper help documented whenever user stuck at any point. Basically system navigation is checked in this testing.

Install/uninstall testing – Tested for full, partial, or upgrade install/uninstall processes on different operating systems under different hardware, software environment.

Recovery testing – Testing how well a system recovers from crashes, hardware failures, or other catastrophic problems.

Security testing – Can system be penetrated by any hacking way. Testing how well the system protects against unauthorized internal or external access. Checked if system, database is safe from external attacks.

Compatibility testing – Testing how well software performs in a particular hardware/software/operating system/network environment and different combination s of above.

Comparison testing – Comparison of product strengths and weaknesses with previous versions or other similar products.

Alpha testing – In house virtual user environment can be created for this type of testing. Testing is done at the end of development. Still minor design changes may be made as a result of such testing.

Beta testing – Testing typically done by end-users or others. Final testing before releasing application for commercial purpose.