Basic theory test

Software engineering model
Learn about the test and had to discuss the software engineering model, because the test of learning and the development of software engineering Yiyi related and mutually reinforcing. Another test for the more advanced concepts, test engineers should be run through the whole software engineering process.

Waterfall Model
This model is probably the most classic model of software engineering, business modeling -> Analysis -> Summary of Design -> Design -> Coding -> test -> deploy.
However, this model there is a more serious problem:

1, can not be repeated, are not suited to deal with change and demand: as a result of falls from business modeling to model the deployment of the same strain, not back. Needs of modern software projects, the existence of change is everywhere: the only constant is the demand for change. And the use of this model, as long as the project needs change, it is necessary to re-spilled analysis, outline design, detailed design ...

2, the user is difficult early in the project understand the project status: as a result of the early users of the project it is difficult to demand their own, they sometimes do not know what to do? Waterfall model using only the end of the coding, the user can see precisely the products they need, and often the initial stage of these products is their incomplete understanding of the need to add customers in this period tend to reverse their demands and called for another legislation needs to the client side so often, the demand side is too much trouble to bring results.

Iterative model and spiral model:
These two models are often not obvious in the difference between the concept of many books on these two models mixed up. In fact, the idea of these two models is essentially the same. He will be in accordance with customer demand significant levels of users and modules of its own hierarchy, from the most basic analysis, design, coding, testing, and then move on to the next round of iteration. Users can do the end of each round will be able to see some prototype products, to demand change and the next round of proposals, due to the early development of relatively small, the user can be made relatively early in the product considerable demand for the next round, So now the model is often conducive to the development of software products, the famous RUP tools for each and every one followed the idea of iteration.

Test model

V model
Compared to unit test code, this step is often to carry out by the testing staff;
Integrated test compared with the detailed design, he will from the next module, carried out by the bottom-up step-by-step integration. To test the module with the module, type and category of the relationship between;
System testing is compared with the overall design is concerned, the test stand on the user's point of view of the system to conduct a comprehensive testing;
User acceptance testing is done to test the products, will generally be divided into Alpha testing and Beta testing. Alpha testing is usually the company or the non-technical personnel involved in the testing of products; Beta testing is often designated the company's customers to test the market before the system test phase of the second version.

V model can be used waterfall model and iterative model
X model
X model is the software system is divided into Luo modules, each module of the unit, integration and system testing, and then a unified integration testing of modules, this test out of the current trends in the software industry.

Pre-model
Icon is listed in the pre-object-oriented model, other methods of pre-model into the size of Italy, is to test through the entire process of software development. Demand, design and coding stage of its review of the workpiece produced, make their own suggestions and comments. Pre-test for the software, bug in the software can be found early on in order to reduce software development costs.

Methods do not take advantage of the bug front curve.
Methods of use of pre-bug curve, bug in the beginning can be found before.
Software testing methods

Software Testing steps
Test Plan
Writing test cases
The development of test code
To carry out the test work (which usually involve several rounds of testing, including test and retest each time for testing the bug, requires developers to modify the end to give a precise answer, illegal bug, as well as to address the next version)

2 assessment test
Software Testing Types

1. Data and database integrity testing
Name of the project, the database and the database processes should be used as a subsystem to be tested. These subsystems in the test, the test should not be used as a data user interface interface. The database management system (DBMS), also need to conduct an in-depth study to determine the test can support the following tools and techniques.

2. Functional Testing
To test the function of the test should focus on all can be directly traced to use cases or business functions and business rules of the testing requirements. The objective of this test is to verify the data receiving, processing and retrieval is correct, as well as the implementation of business rules is appropriate. These tests based on black box technology through the graphical user interface (GUI) and interactive applications, and interactive analysis of the output or results, in order to verify the applications and their internal processes. The following is a list of various applications of the tests recommended outline:

3.UI test
User interface (UI) test used to verify a user interaction with the software. The goal of UI testing is to ensure that the user interface will function to pass the test object to provide users with the appropriate access or browsing. In addition, UI testing can ensure that the UI objects in the desired manner in accordance with and in accordance with the company or industry standards. Including user-friendly, and human testing.

4. Performance Test
4.1 Load Test:
Load testing is a performance test. In this test, the test object will assume the workload of a different order to measure and assess the workload in different test conditions, the performance of acts, as well as the ability of continuous uptime. The goal of load testing is to determine and to ensure that the system is expected to exceed the maximum workload of the case can still operate normally. In addition, the load testing we need to assess the performance characteristics, for example, response time, transaction rate and other time-related aspects.

4.2 Strength
Is a performance test, implement and enforce the purpose of these tests is to find out because of insufficient resources or resources to compete and lead to mistakes. If insufficient memory or disk space to test the performance of the object may be some under normal conditions is not obvious flaws. And other defects may be due to compete for shared resources (such as database locks or network bandwidth) caused. Strength test can be used to determine the test object can handle the biggest workload.

4.3 capacity test
Test test object capacity to deal with large amounts of data to determine whether the software will reach the limit of failure. Testing will also determine the capacity of the test object in a given period of time to continue to deal with the maximum load or workload. For example, if the test is to generate a report to deal with a group of database records, then the capacity of the test will use a large test database, test whether the normal operation of the software and generate the correct statements.

Benchmark 4.4
Compared with the known system

4.5 Competition Test
Competition in the use of software resources (data records, memory, etc.)

5. Security and Access Control Testing
Security and access control security testing focused on two key areas:
Application-level security, including data or business functionality
System-level security, including the system registry or the remote access.
Application-level security to ensure that: the safety of the expected case, the protagonist can only access a specific function or use case, or only limited data access. For example, could allow for all input data, create a new account, but only an administrator can delete the data or accounts. If a data-level security, the test will be to ensure that "user type one" can see the news for all customers (including financial data), and "user b" clients can see the same statistics.
System-level security system ensures that only have access to the user to access applications, but only through the corresponding gateway to access.

6. Failover and recovery testing
Will ensure the successful completion of the test object can failover and data loss can lead to accidents or damage to data integrity of a variety of hardware, software or network failure recovery.
Failover testing to ensure that: For the operation of the system must continue, in the event of failure, a backup system will seize the opportunity to "replace" the failure of the system, in order to avoid losing any data or services.

Recovery testing is an antagonistic test process. In this test, application or system will be placed in extreme conditions (or under simulated extreme conditions), to generate a fault (such as equipment, input / output (I / O) failures or invalid database pointer and customs Kin-word). Then calls the recovery process and the application of monitoring and inspection procedures and systems to verify the applications or systems and data has been the restoration of the right.

7. Configuration test
Test to verify the test configuration in different software and hardware configuration of the operation. In most production environments, client workstations, network connections and database servers specific hardware specifications will vary. Client workstations may be installed for example, different software, applications, drivers, etc. at any time and may run a number of different combinations of software, which occupy different resources. (Such as the browser version. OS version, etc.)

8. Installation testing
The installation of the test is twofold. The first purpose is to ensure that the software in the normal and abnormal situations under different conditions: for example, the first installation, upgrade, complete or custom installation of _ can be installed. Unusual circumstances, including lack of disk space, lack of competence, such as directory creation. The second purpose is to verify the software can be installed immediately after the normal operation. This usually refers to running a large number of functional tests developed for testing.

9. Localization Testing
Also known as localization testing, is defined as the development of products in all areas of testing, such as English, Chinese, etc., including the possibility of normal operation procedures, interface with the local customs, whether the normal function keys, etc., in particular test A language environment run B language software (such as in the English try to run under win98 the Chinese version of the program), there is a normal phenomenon.

10. Text test
Test text is spelled correctly, is easy to understand, there is no ambiguity, there is no syntax error; text and content by access and so on, including the picture text

11. Resolution test
Testing at different resolutions, the extent of the interface appearance, divided into 800 * 768,1152 * 600,1024 * 768,1280 * 864,1280 * 1024,1200 * 1600 to test the font size

12 release test
Major product releases in a number of spin-offs before, such as brochures, advertising text, such as testing

12.1 Manual Testing
The main language examination, function tests, picture check
Language checking: check the manual language is correct, the wording is easy to understand;
Function test: whether the description of fully functional, or does not describe the function, etc.;
Photo check:: check the picture is correct

12.2 Publicity materials testing
The main test products promotional materials attached to the language, describe the features, pictures

12.3 Help files test
Help file is correct, easy to understand, whether or not human

12.4 advertising terms

Products of the company's advertising material before the text, functions, pictures, personal check

Software testing curve

We all know that the software bug is not possible to zero, which in general bug with the passage of time the number of close to zero, with a curve, said:

Here the abscissa is time, ordinate is not yet found a few bugs. Bug before the start of the project for the infinite, with the passage of time, bug tends to zero but not equal to zero.

Since the bug is not equal to zero, are products not released it? There is also a bug product release time can be identified.

Abscissa is time, ordinate is the number of bugs have been found, when the curve has stabilized, which means it tends to zero slope, this product can be released.

The phenomenon of software pesticides

Personnel as a result of testing different ideas, everyone focused on the different tests, as tests are carried out in accordance with the test cases, but only to describe the general system test cases some of the basic test items, not all aspects of all the test cases are written, sometimes need to test the quality of staff experience and. Therefore, A test of a product with a seven working days, the first day of the fourth day of the reported number of bug, but not the fifth day at the beginning of what is almost a bug. After seven days for the B, B and test out all of a sudden a bunch of bug, can not be said that the level of A poor, can only say that the product has resulted in resistance to A, this study is to test the phenomenon of pesticides. With plans, said:

Therefore, in testing the best rotation to test different test arrangements for testing of different modules in order to avoid pesticides phenomenon.
  • del.icio.us
  • StumbleUpon
  • Digg
  • TwitThis
  • Mixx
  • Technorati
  • Facebook
  • NewsVine
  • Reddit
  • Google
  • LinkedIn
  • YahooMyWeb

Related Posts of Basic theory test

  • Do not believe mongrel_rails cluster:: start!

    Update code after Action (No action responded to xxx) error. Check the code, has been updated. Change the action name, change the path is always error. Baffled. In the system under ps ax | grep mongrel, found that Mongrel can not find the process! Bu ...

  • JUnit Unit Testing Summary

    Read some of the unit test article, from the article in the interception of a number of information, which could be considered in the learning process, a summary of it! See future! Unit testing code is not used to prove you are right, but in order to ...

  • Hundred software developers interview question

    Hundred software developers interview question Think employed to engage in software development of smart people is not easy. The event of accidentally, it will get a pile of low-energy large baboons. I met last year on this matter. You certainly do n ...

  • lighttpd + fastcgi built a server how to preserve the status of server

    Requirements: server-side has much static files, there is much use of c + + to prepare the operational components necessary to carry out these functions on the external packaging Published Service, server-side state required to preserve the client (s ...

  • Maven 2.0: Compile. Test. Deployment. Run

    <url> http://maven.apache.org </ url> <dependencies> <dependency> <groupId> junit </ groupId> <artifactId> junit </ artifactId> <version> 3.8.1 </ version> <scope> test </ scope> ...

  • js events dynamically add and write-off

    IE's JScript existence of memory leak bug must we all know or have heard of. This is because of IE's memory recovery manager of a design error. When we create a prepared script when a cross-reference, for example, the following code: window.o ...

  • FLEX: integrating Spring + Hibernate

    Before a friend also wanted to study development of FLEX. Asked me to help him to be a small sample. Spent a weekend time, to integrate a sampleproject. Client: FLEX Server: Spring2.5 + Hibernate3.2 + Hibernate-annotations3.3.1 + MySQL5 FDS: BlazeDS3 ...

  • Memo hibernate problem

    hibernate using myeclipse automatically generated HBM mapping file will be schema ="***" catalog ="***" Separately are the database instance name and database name, but in fact has been stated jdbc url connection database, are the ...

  • Process migration from tomcat to websphere changes

    Process migration from tomcat to websphere changes Because customers use the web application server software used by different what tomcat5, tomcat6, websphere5.1, websphere6.1, weblogic8, and so on, and the software used inconsistent standards, ibm& ...

  • Sign in spring struts2.0 hibernate user authentication

    Engage in a day has finally put the ghost of a user log in to engage in things out. . Ah first experience with a spring to manage the bean is a good tool. Of course, far more than this spring profound role in it. This is called a simple sense of the ...

Leave a Reply

Recent
Recent Entries
Tag Cloud
Random Entries