This document provides an introduction to software testing. It discusses that software testing is the process of evaluating software to discover errors and ensure it meets requirements. Testing is important because all software has defects, it is written by humans who make mistakes, and testing aims to eliminate faults early and ensure quality. The document then discusses software requirements for installation like necessary frameworks, internet connection, operating system compatibility, and hardware compatibility. It also covers different types of testing like functional and non-functional testing, writing test cases, executing tests, and verifying results. Benefits of testing include identifying defects and increasing confidence software meets specifications, though testing cannot guarantee software is completely error-free.
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
How to Perform Software Testing
1. How to Perform Software Testing
Colorado State University
Department of Electrical Engineering
Class: JTC300 Professional and Technical Communication
Presentation name: Minh Anh Nguyen
Email: minhanhnguyen@q.com
2. Introduction of Software Testing?
• Software testing is the process of evaluating a
developed system to assess the quality of the final
product or computer software.
• The purposes of software testing are to discover
errors, mistakes, and flaws in the developed
software and to ensure that software satisfies the
specified requirements of customers.
• Software testing is a crucial part of the software
development cycle.
3. Why testing is Important?
• All software has defects (bugs)
• Software is written by human beings such as
software engineers. People are imperfect and
make mistakes.
• Goals:
oto eliminate faults as early as possible
oto make sure the software works properly and
does the work that it is meant to perform
oto improve quality
oto preserve customer satisfaction
4. Software requirements
• Prerequisite to installation
o Before installing or updating any new software, users need to know some of the
requirements for installation to avoid any unexpected difficulties during execution.
• Net Framework
o Some frameworks require .NET 4.0 runtime or higher to be installed in advance
before launching the application.
o The .NET 4.0 program can be downloaded for free from Microsoft Download.
• Internet Connection
o If the application is accessible through the internet, then it will likely require a faster
internet line with minimum of 1Mbps.
o This requirement is needed to avoid a high rate of failure.
• Operating System
o Users must check to see whether or not the software is compatible with their
operating system such as Windows, Linux, Mac, etc, before they install the software.
• Hardware
o Users also need to check the application/software compatibility with different
hardware configurations.
o Hardware is mostly a computer, but sometimes it is a test instrument.
o Hardware and software are two main types of components required for a system to
work.
5. Testing
• Functional Testing Requirement
o The goal is to verify that the software or application meets
customer’s requirements, that it does not have any major bugs,
and to ensure that the software is ready for release to the public.
• Non-Functional Testing Requirement
o The goal is to see whether or not the software stands up to
customer expectations or if it behaves correctly and meets
performance requirements.
• Test Case or suite
o Write test cases for valid as well as invalid input conditions.
o A good test should neither be too simple nor too complex.
o A good test case is one that detects real faults and has a
probability of finding an as yet undiscovered error.
o What should your test program test?
6. Testing (Cont.)
• Test (Execute test)
o Run tests on the software and record the results
o Keep record of success and of failures
• Verified Test Case
o Thoroughly inspect the results of each test
o Check if the software does what it is expected to do
• Ease of Use
o If software is designed in such a way that navigation
through it is user-friendly, test engineers need to test all
the new features to ensure that these features work
correctly.
7. Testing (Cont.)
• Simple Test Report
o Copy of each test script with evidence that it was executed (i.e.,
dated with the signature of the person who ran the test, and test
results)
8. Benefits of software testing
• Software testing is necessary because it helps in
identifying defects.
• The testing process may not fix the entire defect
present in the software application, and it cannot
guarantee that the software is 100% error free, but
it provides user friendliness.
• Software Testing is important for increasing
confidence that the software meets specification.
9. References
• Limaye, M. (2009). Software testing: Principles, techniques and tools.
New Delhi: Tata McGraw-Hill Education Private.
• Patton, R. (2006). Software testing (2nd ed.). Indianapolis, IN: Sams Pub.
• PUMA- Publication MAnagement. (n.d.). Retrieved July 8, 2015, from
http://puma.isti.cnr.it/rmydownload.php?filename=cnr.isti/cnr.isti/2004-
TR-36/2004-TR-36.pdf.
• Javed, A. (2012). How To Improve Software Quality Assurance In
Developing Countries. ACIJ Advanced Computing: An International
Journal, 17-28.
• Myers, G., & Badgett, T. (2004). The art of software testing (2nd ed.).
Hoboken, N.J.: John Wiley & Sons.
• Patton, R. (2001). Software testing (1st ed.). Indianapolis, IN: Sams Pub.
• Tzmann, M., & Young, C. (2003). Software testing and internationalization
(English ed.). Salt Lake City: Lemoine International.