Tuesday, July 24, 2012

Tool for test execution


1 - Introduction: At present the use of tools has become so essential to automate many processes. The test flow is a flow specifically important in the development of software. It was crucial to investigate the use of tools to improve the quality and efficiency of this flow. During the investigation will show the importance of the tool to use, and its operation, through real examples of tests of a module. 2 - The tool JMeter JMeter is a free tool, it is also a Java tool, which allows performance testing and functional testing of Web applications. Load is a tool to carry out simulations on applications for Software. JMeter Java tool within the Jakarta project, which allows performance testing and functional testing of web applications and databases. There are a number of tools for testing free and paid (LoadRunner), but JMeter is known for its versatility, stability, and being free to use. JMeter allows traditional web testing, but also allows you to test FTP, JDBC, JNDI, LDAP, SOAP / XML-RPC and Web Service (in Beta). It also allows distributed test execution between different computers to test performance.

The JMeter shows the results of tests on a wide variety of reports and graphs. It also facilitates the quick detection of existing bottlenecks due to excessive response time. All these tools can be used for testing efficiency under high load, however there are some that have advantages over the other, so they are best used during the tests in question. In an application is vital to spend a little time to prepare proficiency testing under load and stress, before being delivered. The time spent is more than recovered, as it detected the possible side effects and you can see if this new functionality supports the number of concurrent users that were specified in the requisitos.Estos are some specific objectives that can have: Verify that the system is set to support the maximum possible load using actual.Asegurar infrastructure that, at a given workload, the pages that are accessed respond within the time interval specified by the time diseñadores.Determinar group Average response usuario.Determinar you get the maximum number of concurrent users that can access a specific page, or transactions per second that the application can respond soportar.Identificar pages slower and more pages rápidas.Identificar with higher standard deviation in his time testing respuesta.1Las efficiency under high load should ideally run on a stable environment as similar as possible to the final production environment, following the above objectives can always be added depending on other of interest that JMeter tool persiga.Ventajas Of the free tools, is the most comprehensive and useful for the type of evidence cuestión.Es a tool for functional testing, but also serves to perform regression testing applications web, something that is sometimes very complicated, depending on the application, but it is almost essential in the maintenance and evolution of applications, if you will ensure appropriate skill level in the delivery of producto.Tiene a tree structure that gives power, allowing it to be the imagination of the use to put limits on when designing the test plan.

And it provides greater number of variants for the results obtained, the rest of the free tools, which allow a comprehensive analysis of the tests. 3. Performance test run the Daily Activity Log (RAD)

The system management information models Daily Activities (RAD) is now part of the set of applications developed for the System of Health Information (SISalud) in the subject area of ​​APS faculty 7. Within non-functional requirements that govern the development of the application, has, for example, the number of terminals, the expected number of users simultaneously connected, number of transactions per second to be carried on the system, etc.. All these requirements must be measurable. It should be noted in percent (%) related to its time. RNF 1: The system must support the simultaneous connection of more than 60 000 users. RNF 2: The system must support a response time less than or equal to 30 seconds. RNF 3: The system must support SOAP responses must not exceed 50 Kbyte in user response time. The test was conducted in one of the options of daily activity logs, Delivery of the Guard, where he will be reporting test cases seen by Category of patients. The use case begins when the Personal Health Unit is concerned with the number of cases seen by health indicators on a certain date.

Textual description. Obtain reports of cases seen by Category Actors Patients: Brief Description: Preconditions: Postconditions: Personal Health Unit The Use Case begins when the Personal Health Unit is concerned with the number of cases seen by Category of Patients on a certain date. The system returns data based on the cases handled by existing categories to date. Table 1.1 Description Get Report textual cases seen by Category of Pacientes.Prueba 1: Test case for cases seen by Category Pacientes.Nombre the project to be measured: Daily Activity Log. Test Case Name: Case Viewed by Category of patients. Use Case Name measure: cases seen by Category of patients. Test Number: 1 level of concurrency or group of users: 5 cycles of work: 10 Option to try: It's going to taste 1 module option Daily Activity Log. (Get Report cases seen by Category of Patients). Results obtained in test 1: The maximum response time of the Get Report cases seen by Category of Patients: 2.1 sec average time for results: 0.4 sec% error: 50% in the proven choice. Answers bytes: 9.2 kb / s. Table 1.2 Test Results 1.Prueba 2: Test Case of cases seen by Category Pacientes.Nombre the project to be measured: Daily Activity Log.

Test Case Name: Case Viewed by Category of patients. Use Case Name measure: cases seen by Category of patients. Number of test: 2 Level of competition or group of users: 10 cycles of work: 10 Option to try: It's going to taste 1 module option Daily Activity Log. (Get Report cases seen by Category of Patients). Results obtained in test 2: The maximum response time of the Get Report cases seen by Category of Patients: 4.2 sec average time for results: 0.6 sec% error: 50% in the proven choice. Answers bytes: 9.2 kb / s. Table 1.3 Test Results 2.Prueba 3: Test Case of cases seen by Category Pacientes.Nombre the project to be measured: Daily Activity Log. Test Case Name: Case Viewed by Category of patients. Use Case Name measure: cases seen by Category of patients. Number of test: 2 Level of competition or group of users: 15 cycles of work: 10 Option to try: It's going to taste 1 module option Daily Activity Log. (Get Report cases seen by Category of Patients). Results obtained in test 3: The maximum response time of the Get Report cases seen by Category of Patients: 5.1 sec average time for results: 0.9 sec% error: 50% in the proven choice.

Answers bytes: 9.2 kb / s. Table 1.4 Results of Test 3. The test was conducted simulating a load of 5, 10 and 15 users requesting reports of cases seen by Category of Patient Daily Activity Log. The test with more than 15 users can be carried out under these conditions, ie in a single machine, since it requires more than one machine testing the application. Doing it on a single machine, the maximum allowed is 15 users, as the percent of CPU utilization must be less than 90%, if the test uses more of that percent, the results are false, and are not real. After defining the characteristics of the user group to be simulated (Test Plan> Thread Group) for the load generated by the application, you create a HTTP Request Defaults (Thread Group> Config Element> HTTP Request Defaults) required parameters are specified such as server ip number, port etc. Then it adds a Proxy Server (WorkBench> Non-Test Elements> HTTP Proxy Server), which specifies where they will be stored samples.

It gets to run the tool, and begin to work on the application, step by step to obtain the report cases seen by Category of patients, as they visit a new page of the application, the samples obtained from this page, aggregated into a Transaction Controller (Insert Parent> Logic Controller> Transaction Controller). Once the navigation in the application, adds two reports one to see the response times and another to see errors found in the test (Thread Group> Add> Listener> View Results Summary Report and Tree respectively). This report gives the response time of the application under the load of 15 users, we find that the average response time of the application is 2 seconds, the minimum time of 0.047 seconds is slow and the maximum was 5.1 seconds. The percent error was 50% in analysis of the report refers to such errors. It also shows the application performance while browsing that was 14.9 seconds and a response of 134 KB / sec. With this report (View Results Tree) can be found errors for each page visited, for example on the main page of RAD, we found two errors (/ general / style.css and / general / allstyles_aps.css) according to the report says that these files are not, when applying this page there is a delay in making the request for those files, do not exist.

3 - Conclusions We have a proposal tools like JMeter to stress tests. In addition to a more specific document on the use of this tool. With this tool you can analyze the performance of an application, under specific conditions is to analyze how it responds to an application under the action of a number of users connected to it. 1Ramírez, Yilen Pons. 2007. Procedure for load tests of efficiency-intensive Web applications health. Havana: UCI, 2007.

2 comments: