Sie sind auf Seite 1von 8

61.

Testing for design phase: Design Analysis Testing (DAT) Evaluates correct implementation of the design intent, and requires intimate knowledge of the design detail. Performed by designers, or dedicated group of DAT testers. Typically tightly coupled to designers. Verifies that implementation is correct as intended and meets requirements. In addition, allows designers to exercise design in extreme ways. White box testing. Design Verification Testing (DVT) Demonstrates that specified requirements have been met. Typically performed by independent group, sometimes called QA, especially in SW word. Verifies design to requirements. Black box testing. Design validation 1.Demonstrates that the system conforms to user needs and intended uses. 2.Performed by independent group, or more likely, the designers and system engineers. 62. Software Testing Methodologies These are some commonly used software testing methodologies: Waterfall model V model Spiral model RUP Agile model RAD Waterfall Model The waterfall model adopts a 'top down' approach regardless of whether it is being used for software development or testing. The basic steps involved in this software testing methodology are: Requirement analysis Test case design Test case implementation Testing, debugging and validating the code or product Deployment and maintenance In this methodology, you move on to the next step only after you have completed the present step. There is no scope for jumping backward or forward or performing two steps simultaneously. Also, this model follows a non-iterative approach. The main benefit of this methodology is its simplistic, systematic and orthodox approach. However, it has

many shortcomings since bugs and errors in the code are not discovered until and unless the testing stage is reached. This can often lead to wastage of time, money and valuable resources. V Model The V model gets its name from the fact that the graphical representation of the different test process activities involved in this methodology resembles the letter 'V'. The basic steps involved in this methodology are more or less the same as those in the waterfall model. However, this model follows both a 'top-down' as well as a 'bottom-up' approach (you can visualize them forming the letter 'V'). The benefit of this methodology is that in this case, both the development and testing activities go hand-in-hand. For example, as the development team goes about its requirement analysis activities, the testing team simultaneously begins with its acceptance testing activities. By following this approach, time delays are minimized and optimum utilization of resources is assured. Spiral Model As the name implies, the spiral model follows an approach in which there are a number of cycles (or spirals) of all the sequential steps of the waterfall model. Once the initial cycle is completed, a thorough analysis and review of the achieved product or output is performed. If it is not as per the specified requirements or expected standards, a second cycle follows, and so on. This methodology follows an iterative approach and is generally suited for very large projects having complex and constantly changing requirements. Rational Unified Process (RUP) The RUP methodology is also similar to the spiral model in the sense that the entire testing procedure is broken up into multiple cycles or processes. Each cycle consists of four phases namely; inception, elaboration, construction and transition. At the end of each cycle, the product or the output is reviewed and a further cycle (made up of the same four phases) follows if necessary. Today, you will find certain organizations and companies adopting a slightly modified version of the RUP, which goes by the name of Enterprise Unified Process (EUP). Agile Model This methodology follows neither a purely sequential approach nor does it follow a purely iterative approach. It is a selective mix of both of these approaches in addition to quite a few new developmental methods. Fast and incremental development is one of the key principles of this methodology. The focus is on obtaining quick, practical and visible outputs and results, rather than merely following theoretical processes. Continuous customer interaction and participation is an integral part of the entire development process. Rapid Application Development (RAD) The name says it all. In this case, the methodology adopts a rapid development approach by using the principle of component-based construction. After understanding the various requirements, a rapid prototype is prepared and is then compared with the expected set of output conditions and standards. Necessary changes and modifications are made after

joint discussions with the customer or the development team (in the context of software testing). Though this approach does have its share of advantages, it can be unsuitable if the project is large, complex and happens to be of an extremely dynamic nature, wherein the requirements are constantly changing. 63.Tools For software Acceptance Testing: Acceptance Testing is the formal testing conducted to determine whether a software system satisfies its acceptance criteria and to enable buyer to determine whether to accept the system or not.Acceptance testing is designed to determine whether software is fit for use or not. Apart from functionality of application, other factors related to business environment also plays an important role. List of acceptance-testing frameworks FitNesse, a fork of Fit Framework for Integrated Test (Fit) iMacros ItsNat Java Ajax web framework with built-in, server based, functional web testing capabilities. Ranorex Selenium (software) Test Automation FX Watir 64.Benefits Of Software Testing: 1) Software testing discovers if critical functionality works. This is helpful to know when your trying to sell something (Im assuming!) 2) Software testing makes sure that your product doesnt negatively affect interacting systems. I suspect this helps encourage repeat sales. 2) It provides tangible results which can be used to sell the product. For example, you can use your proven high performance as a selling point 3) It demonstrates delivery from a contractual perspective through acceptance testing 4) It gives confidence to those selling the product. There is added benefit in knowing the product your selling works. 5) Certification can provide business a selling point. If your system conforms to a technical standard, it may help your product to be perceived as reliable. 6) Early fault detection reduces the cost of fault detection. The earlier a defect is found, the less development rework and re-test is required, minimising its implementation cost. 7)I t delivers efficiencies in the software development process through metrics such as root cause analysis . These detect possible areas of improvement for software development. 8) Software testing is the source of information such as defect reports, metrics and results that assist IT perform their roles efficiently. Project managers rely on metrics to report on progress, operations, on tangible results to extrapolate future hardware requirements and developers on defect reports to fix their code. 9)Manual testing is cost effective.

10)More random type of testing can be done in manual testing. 65.Test Strategy A test strategy is an outline that describes the testing portion of the software development cycle. It is created to inform project managers, testers, and developers about some key issues of the testing process. This includes the testing objective, methods of testing new functions, total time and resources required for the project, and the testing environment.Test strategies describes how the product risks of the stakeholders are mitigated at the test-level, which types of test are to be performed, and which entry and exit criteria apply. They are created based on development design documents. System design documents are primarily used and occasionally, conceptual design documents may be referred to. Design documents describe the functionality of the software to be enabled in the upcoming release. For every stage of development design, a corresponding test strategy should be created to test the new feature sets. 66.Test Data In most cases, multiple sets of values or data are used to test the same functionality of a particular feature. All the test values and changeable environmental components are collected in separate files and stored as test data. It is also useful to provide this data to the client and with the product or a project. 67.Primary objectives of testing during design phase is to: 1.Verify if the design is good,testable,efficient,compact and maintainable. 2.Verify if the design meets the requirements and is complete.(i.e specifies all the relationships between modules,how to pass data,what happens in exceptional circumstances, starting state of each module etc.). 3.verify if the design incorporates sufficient memory , i/o devices and quick enough runtime for the future product. 68. Need For Software Maintenance Maintenance is the last stage of the software life cycle. After the producthas been released, the maintenance phase keeps the software up to date with environment changes and changing user requirements. As software systems age, it becomes increasingly difficult to keep them up and runningwithout maintenance. Systems must also be adapted to changing environments and user requirement needs.In fact, a substantial proportion of the resources expended within the Information Technology industry goes towards the maintenance of software systems. 69. Four steps in selecting the app. Software testing tool: 1. What is the type of my project? Is it a stand-alone project or a client server project?

2. What is the size of my project? You can find size on various metrics like kilo line of code. 3. Is there repeated work in my project? 4. Time taken for My current Manual project testing 5. Error rate by Manual testing. 70.Cost Of Testing: Project planners have cost estimation models (COCOMO model) ,which they use to estimate overall project cost The test planner can use the COCOMO model to estimate total project costs ,and then allocate fraction of these costs for test. Roper suggest a fractional value of about 50% of total project costs. Testing costs = 0.5*total project costs. Total project cost includes: 1.costs of planning and designing the tests. 2.cost of acquiring the hardware and software necessary for the tests. 3.cost to support the test environment 4.cost of executing the tests. 5.cost of recording and analyzing test results. 6.tear-down costs to restore the environment 7.cost of training the testers and maintaining the test database. 71.Inspection Plan Inspection Plan describes how a quality inspection of one or several materials is to take place. The inspection plan contains information about the sequence of inspection operations and the range of specifications available for inspecting inspection characteristics.Inspection plan can be used to inspect materials using standard processes. You can also inspect several materials with one inspection plan, or one material with several inspection plans. 72.Spiral Testing In the spiral development environment, software testing is again described as a continuous improvement process that must be integrated into a rapid application development methodology. Testing as an integrated function prevents development from proceeding without testing. 73.Test Metrics 1.Provide an objective measurement of the success of the software project. 2.Are a standards of measurement. 3.Gauge the effectiveness and efficiency of several software development activities. 4.Are gathered and interpreted throughout the SDLC life cycle. 74. Testing methods The box approach

Software testing methods are traditionally divided into white- and black-box testing. These two approaches are used to describe the point of view that a test engineer takes when designing test cases. White box testing White box testing is when the tester has access to the internal data structures and algorithms including the code that implement these. Black box testing Black box testing treats the software as a "black box"without any knowledge of internal implementation. Black box testing methods include: equivalence partitioning, boundary value analysis ,decision table testing ,cost effect graphing ,state transition testing ,syntax testing . Gray Box Testing: Grey box testing involves having knowledge of internal data structures and algorithms for purposes of designing the test cases, but testing at the user, or black-box level. Manipulating input data and formatting output do not qualify as grey box, because the input and output are clearly outside of the "black-box" that we are calling the system under test. This distinction is particularly important when conducting integration testing between two modules of code written by two different developers, where only the interfaces are exposed for test. However, modifying a data repository does qualify as grey box, as the user would not normally be able to change the data outside of the system under test. Grey box testing may also include reverse engineering to determine, for instance, boundary values or error messages. 75.Methodologies of software testing: 1.Testing begins at module level and works outwars towards the integeration of entire computer based systems. 2.Different testing techniques are required at different points in testing. 3.Testing is conducted by the software developer,third party people or independent test groups. 4.Testing and debugging are 2 different activities and debugging is also necessary. 76.Methods for developing the strategies for testing Test cases should be designed such that 1. It reveals all defects 2. It evaluates the software performance ,usability and reliability Effective test cases ensures: 1.there is a greater probability of deteting defects 2more efficient use of organizational resources 3a higher probability of test reuse 4closer adherence to testing and project schedules and budgets

5possibility of delivering high quality software. 77.Software testing is a process of executing a program with the intent of finding errors.It spans through the entire software development lifecycle(SDLC). Software testing can be stated as the process of validating and verifying that a software program/application/product: meets the requirements that guided its design and development; works as expected; and can be implemented with the same characteristics.

78. Error Detection: Testing should intentionally attempt to make things go wrong to determine if things happen when they shouldnt or things dont happen when they should. Test to break strategy/idea is to implemented to overcome all possible errors. 79. Volume Testing Volume Testing belongs to the group of non-functional tests, which are often misunderstood and/or used interchangeably. Volume testing refers to testing a software application with a certain amount of data. This amount can, in generic terms, be the database size or it could also be the size of an interface file that is the subject of volume testing. For example, if you want to volume test your application with a specific database size, you will expand your database to that size and then test the application's performance on it. 80.Boundary value analysis: Many Defects occur on and above and below the edges of the equivalence classes.Boundary value analysis is a testing strategy which test at these boundaries of the equivalence classes on both the input and the output spaces.Tester selects elements close to the edges ,so that both the upper and the lower edges of the equivalence class are covered by test cases.

Das könnte Ihnen auch gefallen