Resumen:
|
[ES] Las pruebas de software o Testing, son las investigaciones empíricas y técnicas que tienen como objetivo proporcionar información objetiva e independiente sobre la calidad del producto, para así, verificar si el ...[+]
[ES] Las pruebas de software o Testing, son las investigaciones empíricas y técnicas que tienen como objetivo proporcionar información objetiva e independiente sobre la calidad del producto, para así, verificar si el comportamiento del sistema es el deseado o no. Existen muchos tipos diferentes de pruebas de software con objetivos y estrategias diferentes, como las de aceptación, las de integración, las unitarias, etc.
En este trabajo se aborda la mejora de una suite de pruebas de interfaz de usuario para la empresa Preference S.L., con la pretensión de disminuir sus tiempos de ejecución de forma considerable, bajo una implementación libre de anti-patterns dentro de lo posible.
Actualmente la empresa usa el software de pago Ranorex para sus pruebas de interfaz de usuario, con un tiempo de ejecución total de 6 h 16 min 14 s, al igual que utiliza MSTest para las pruebas unitarias de .NET en C#, con un tiempo de ejecución de 1 min 15 s. Por ello este proyecto aborda la mejora de las pruebas de IU, ya que el tiempo de las unitarias no es tan costoso.
Todos los inconvenientes extraídos en la fase del análisis, además de la investigación sobre los frameworks de pruebas extremo a extremo relevantes en la actualidad, derivaron en el empleo de Cypress (un framework para pruebas de interfaz de usuario) como herramienta de ejecución de test. Posteriormente, se complementó la herramienta con una librería llamada Testing-Library, que añadía la posibilidad de que las pruebas se centrasen aún más en el usuario, consiguiendo testear código que antes no se testeaba.
Tras la implementación de la nueva suite de test, la mejora fue drástica, ya que se mejoraron en un 81% los tiempos de ejecución sin tan siquiera llegar a paralelizar. Calculando que con una paralelización de 4 equipos se podría conseguir la drástica mejora de un 90% con respecto a los tiempos iniciales de ejecución.
Es por esto por lo que el proyecto se ha considerado como un éxito para la empresa, y que, se mantendrá en período de prueba junto con la anterior suite de test para comprobar a largo plazo que efectivamente se llevan a cabo de forma correcta estas pruebas.
[-]
[EN] Software testing, are empirical and technical investigations that aim to provide objective and independent information on the quality of the product, in order to verify whether the behavior of the system is as desired ...[+]
[EN] Software testing, are empirical and technical investigations that aim to provide objective and independent information on the quality of the product, in order to verify whether the behavior of the system is as desired or not. There are many different types of software tests with different objectives and strategies, such as acceptance tests, integration tests, unit tests...
The intention of this project is to improve the user interface test suite for the company Preference S.L., with the aim of reducing its execution times considerably, under a free implementation of anti-patterns.
The company currently uses the paid software Ranorex for its user interface tests, with a total execution time of 6h 16min 14s, as well as using MSTest for .NET unit tests in C#, with a time of execution of 1 min 15 s. For this reason, this project addresses the improvement of UI tests, since the duration of the unit tests is not so extensive.
All the drawbacks extracted in the analysis phase, in addition to the research on the currently relevant end-to-end testing frameworks, led to the use of Cypress (a user interface testing framework) as a test execution tool. Subsequently, the tool was complemented with a library called Testing-Library, which added the possibility of the tests being even more focused on the user, managing to test code that was not tested before.
After the implementation of the new test suite, the improvement was drastic, since execution times were improved by 70% without even parallelizing. Calculating that with a parallelization of 4 computers, a drastic improvement of 90% could be achieved regarding the initial execution times.
This is why the project has been considered a success for the company, and that it will remain in a trial period combined with the previous test suite to verify in the long term that these tests are actually carried out successfully.
[-]
|