# data[].attributes.body
Muy buen trabajo con diferentes tipos de recursos.

# data[].attributes.headline
Factores indispensables para testing de software en normas iso

# data[].attributes.subject
Factores indispensables para testing de software en normas iso

# data[].attributes.body
Investigando sobre el testing en software se puede encontrar 3 características importantes dentro de este proceso, las cuales son: Paso 1 – Analizar los requerimientos de desarrollo de software, Paso 2 – Reconocer las nuevas funcionalidades que serán probadas y probar las existentes y por ultimo Paso 3 – Definir la estrategia de testinging, estas tres acciones toda norma o certificacion debe tener en consideracion para poder desarrollar un concepto correcto.

http://www.kibernum.com/noticias/tres-acciones-indispensables-en-testing-de-software/

# data[].attributes.body
Linea del tiempo de sobre los cambios tecnológicos más importantes y el software testing

# data[].attributes.body
En tutorialspoint nos presentan una guia basica de software testing bastante completa, hablando un poco de historia y de las entidades regulatorias de certificación.

# data[].attributes.attachment_link.description
Software Testing Quick Guide - Learn Software Testing in simple and easy steps starting from its Overview, Myths, QA, QC & Testing, ISO Standards, Types of Testing, Methods, Levels, Documentation, Estimation Techniques.

# data[].attributes.headline
ITNext concepto y evolucion del software Testing

# data[].attributes.subject
ITNext concepto y evolucion del software Testing

# data[].attributes.body
En ITNext nos explican y nos muestran con una linea del tiempo como ha sido la evolución del software testing

# data[].attributes.attachment_link.title
Concept evolution of software testing - ITNEXT

# data[].attributes.attachment_link.description
Software testing has always been an important part of the software development process. In 1957, Charles L. Baker distinguished program testing from debugging in his review of the book Digital...

# data[].attributes.body
El usuario de la web, Javier Garzás, nos cuenta cómo es la historia del Software Testing.

# data[].attributes.attachment_link.readable_text
Aunque no lo parezca, o sí, es difícil, y puede que hasta aburrido, hacer una retrospectiva histórica del Testing. O, al menos, y de paso para intentar minimizar lo de aburrido, de los hechos más destacados de la historia del Testing software. Pero el tema, seré raro, me produce curiosidad (y de hecho, alguna cosa te he dejado en algún post anterior).

Prometo intentar no darte "la brasa" con este post y que te resulte, como a mí, interesante algunos de los siguientes datos.

La primera referencia "textual" que tenemos (o conocemos) del Testing en un libro es de 1957, el libro "Digital Computer Programming", de D. D. McCracken, que algunos dicen que es el primer libro de texto sobre programación, y decía:
In these cases it is highly desirable that the "customer" prepare the check case, largely because logical errors and misunderstandings between the programmer and customer may be pointed out by such procedure. If the customer is to prepare the test solution is best for him to start well in advance of actual checkout, since for any sizable problem it will take several days or weeks to and calculate the test. En estos casos es muy deseable que el "cliente" prepare el caso de verificación, en gran parte debido a los errores lógicos y malentendidos entre el programador y el cliente pueden ser señalados por dicho procedimiento. Si el cliente prepara la solución a la prueba es mejor para él para iniciar con suficiente antelación la comprobación, ya que para cualquier problema considerable le llevará varios días o semanas.
En su día, ya te cité el anterior (y otros casos curiosos), cuando hicimos un repaso histórico del de dónde viene el ATDD.

Además del anterior, siempre sale como hecho destacado de los comienzos del Testing software el mítico proyecto Mercury.

El proyecto Mercury de la NASA, del 1958 al 1963, es mítico porque fue, según la propia NASA, el "primer programa para poner al hombre en el espacio". Y, aparte de lo anterior, ya en lo nuestro, es mítico porque fue el primero (hubo un proyecto anterior, el del X-15, pero no tenía tanto de software), al menos datado, en usar un ciclo de vida iterativo e incremental (predecesor del que hoy consideraríamos ágil).

Y, volviendo al testing, es mítico porque allí trabajó el "famoso" Gerald M. Weinberg, entre otros, famoso por el libro "The Psychology of Computer Programming" (del que la agilidad de hoy ha tomado ciertas cosas) y que posteriormente escribiría el considerado primer libro que tenía "un capítulo" de Testing software (a falta de otra referencia anterior, si alguien la tiene se agradece que la comparta),

Aquel libro era el "Computer Programming Fundamentals" de 1961, de Gerald Weinberg y Herbert Leeds (luego hubo una nueva versión en el 66, en la página del propio Weinberg hay información interesante de ello), y en aquel libro hay párrafos como este:

"It is, of course, difficult to have the machine check how well the program matches the intent of the programmer without giving a great deal of information about that intent"

Weinberg hablaba ahí de la división entre el Testing humano y el automatizado, y hay quien hasta dice que esta podría ser la primera referencia del que hoy se conoce como Testing exploratorio.

El que parece que es el primer artículo de Testing software (realmente era un whitepaper) es el "Evaluation of the Functional Testing of Control Programs" (1967) de IBM.

Luego vendrían menciones al tema en la famosa primera conferencia sobre "ingeniería software" de la OTAN (1968) y el famoso artículo del GO TO, y sus problemas "de Testeo", de Dijkstra. Y en el 1969, de nuevo Dijkstra, en la segunda conferencia de la OTAN, lanza su famosa cita del... "Testing shows the presence, not the absence of bugs".

Otro artículo interesante de citar es el "Fault Diagnosis of Computer Programs" (1971), de Richard Lipton, ya que es el primero que lanza las ideas de los Test que hoy conocemos como "Mutantes".

Pero el primer libro, enterito de Testing, no llega hasta 1972 o 1973, según lo entiendas (ahora te explico), hablo del "Program Test Methods". Realmente, el "libro", que se publica en el 73, era una recopilación de artículos de una conferencia, el Chapel Hill Symposium organizado por la Universidad de Carolina del Norte en 1972, y que edita un tal William Hetzel. La crítica hoy a aquel libro es que...estaba muy centrado el "métodos" de testing, lo que algunos llaman el inicio de la época del "Testing formal".

Y fue Cem Kaner, en su libro Testing Computer Software, de 1988, quien acuñó el término "pruebas exploratorias", según él, lo opuesto al Testing basado en Scripts, y que antes se había definido de múltiples y curiosas maneras:. "pruebas rápidas", "incursiones guerrilleras", etc.

Bueno, todo esto después de horas de leer cosas. Y queriendo centrarme en los hechos menos conocidos, los más antiguos. Al empezar el post no creí que se me extendería tanto y he preferido centrarlo ahí, en los comienzos. Y así no entrar en los Cucumber y otros.

Referencias buenas son esta web y estas dos páginas ( 1 y 2) de James Bach. En cualquier caso, he tenido que leer de aquí y allá y sintetizar de un sitio y otro. Si ves que tienes algún dato que me falta (dato significativo, obviamente, solo me he quedado con lo que a mí me parece más importante) sería bueno que lo dijeras y añadirlo.

# data[].attributes.attachment_link.title
Aquellos maravillosos años, cuando nació el Testing - Javier Garzás

# data[].attributes.attachment_link.description
Aunque no lo parezca, o sí, es difícil, y puede que hasta aburrido, hacer una retrospectiva histórica del Testing. O, al menos, y de paso para intentar minimizar lo de aburrido, de los hechos más destacados de la historia del Testing software. Pero el tema, seré raro, me produce curiosidad (y de hecho, alguna cosa [...]

# data[].attributes.headline
¿Por qué es importante la gestión de pruebas de software?

# data[].attributes.subject
¿Por qué es importante la gestión de pruebas de software?

# data[].attributes.body
Comparto un vídeo donde se muestran casos donde la mala gestión de pruebas de software obtuvo graves resultados, obteniendo pérdidas desde monetarias hasta vidas humanas.

# data[].attributes.attachment_link.title
What is Software Testing & Why Testing is Important?

# data[].attributes.body
Imagen extraída de: https://xbosoft.com/software-quality-blog/iso-29119-useful/

# data[].attributes.body
A continuacion presentaré un video sencillo, el cual nos ejempleficara claramente algunas de los tipos de prueba mas comunes en el software y sus caracteristicas.

# data[].attributes.headline
Instituciones que certifican testing de software:

# data[].attributes.subject
Instituciones que certifican testing de software:

# data[].attributes.body
El International Software Testing Qualifications Board es una organización Alemania. En el caso de América está el ASTQB (American Software Testing Qualifications Board) para Estados Unidos, CSTB (Canadian Software Testing Board) para Canada y HASTQB (Hispanic America Software Testing Qualifications Board) para países de habla hispana.

Estos son los niveles de especialización para las certificaciones que ofrece ISTQB:

Nivel de fundamentos.

Nivel avanzado (Advanced) con 3 opciones de especialización: Test Manager, Test Analyst, Technical Test Analyst.

Nivel experto con 4 opciones de especialización: Improving Test Process, Test Management, Test Automation, Security Testing.

Fuente de consulta:
https://sg.com.mx/revista/46/las-certificaciones-que-todo-tester-debe-conocer

# data[].attributes.body
El 9 de septiembre es el “Tester’s Day” o Día de los Testers. El origen es:

El día 9 de septiembre de 1945 Grace Murray Hopper, científica y militar estadounidense, reportó el primer error informático mientras trabajaba en la sala del Mark en la Universidad de Harvard.

https://www.globetesting.com/2013/09/feliz-dia-del-tester-de-software/

# data[].attributes.body
1. ISO/IEC/IEEE 29119-1: Este estándar consiste en mostrar el vocabulario se utilizará a lo largo de la norma, como también una introducción a la norma.
2. ISO/IEC/IEEE 29119-2: Tiene el objetivo de desarrollar un modelo de proceso genérico para la gestión de testing. Consistiendo en un modelo de 3 fases: estrategia de prueba, gestión de pruebas y pruebas dinámicas.
3. ISO/IEC/IEEE 29119-3: Esta enfocado en la documentación a presentar, proporcionando plantillas que pueden ser utilizadas y acopladas de acuerdo a los requisitos de la organización que la aplique.
4. ISO/IEC/IEEE 29119-4: Presenta las técnicas que brindan una forma efectiva de desarrollo de pruebas. Con el fin de medir el cumplimiento de los requerimientos al realizar las pruebas al software.
5. ISO/IEC/IEEE 29119-5: Definen las pruebas basadas en palabras clave, este es un enfoque para describir casos de prueba de forma modular. Estas palabras clave se basan en un conjunto de acciones que se deben realizar mediante pasos específicos en un caso de prueba.

Fuente de consulta: https://www.testbytes.net/blog/software-testing-standards/

# data[].attributes.body
ISO / IEC / IEEE 29119 Software Testing es un conjunto de estándares acordados internacionalmente para pruebas de software que se pueden utilizar dentro de cualquier ciclo de vida u organización de desarrollo de software.

# data[].attributes.body
Es una serie de cinco estándares internacionales para pruebas software. De acuerdo con la asociación de estándares IEEE, el objetivo de esta serie de normas es definir un conjunto de normas acordadas internacionalmente para las pruebas de software que cualquier organización pueda utilizar para gestionar las pruebas al software. Asimismo, afirma que la implementación de estos estándares es una excelente manera para que las empresas se adhieran a estos estándares reconocidos como para encontrar un enfoque de calidad en sus productos finales.

Fuente de consulta: https://www.iso.org/standard/45142.html

# data[].attributes.body
El grupo de trabajo (GT26) fue constituido por AENOR, Organismo de Normalización en España, para participar en la elaboración del futuro estándar ISO sobre pruebas de software, denominado ISO/IEC/IEEE 29119.

# data[].attributes.body
También existe otra entidad que brindan certificaciones que están orientadas a gestión de pruebas.
IIST(International Institute for Software Testing) esta ubicada en Estados Unidos, y ofrece las siguientes certificaciones:

# data[].attributes.body
También se encuentra la ISQI(International Software Quality Institute) ubicado en Alemania, que se
caracteriza por ofrecer programas de certificaciones para testing ágil y un programa específico para el modelo V.

# data[].attributes.headline
Certificaciones orientadas a la gestión de pruebas.

# data[].attributes.subject
Certificaciones orientadas a la gestión de pruebas.

# data[].attributes.body
En las certificaciones orientadas a la gestión de pruebas resalta mucho la organización ISTQB en sus siglas en inglés (International Software Testing Qualifications Board);es una organización ubicada en Alemania pero existen distintas representaciones a nivel mundial. En nuestro caso, las organizaciones que rigen en nuestro contexto son:
-ASTQB(American Software Testing Qualifications Board) en Estados Unidos.
-CSTB(Canadian Software Testing Board) en Canadá.
-HASTQB(Hispanic America Software Testing Qualifications Board) dirigida para países de habla hispana.
La ISTQB nos brindan las siguientes opciones de cetificación:
-Nivel de fundamentos
-Nivel Avanzado consta de 3 opciones:
- Test Manager.
- Test Analyst.
- Technical Test Analyst.
-Nivel experto consta de 4 opciones:
- Improving Test Process.
- Test Management.
- Test Automation.
- Security Testing.