¿Cómo probar la API de Magento 2 con Postman? [Interfaz]

Compartimos nuestra experiencia al probar la API respaldada por Magento 2 con Postman, pero esto no es suficiente para garantizar que la API funcione bien.

Así que volvemos con las pruebas de API de frontend para los archivos adjuntos de productos de Magento 2 .
CONSULTE NUESTRA GUÍA DE API GRATUITA CON EJEMPLOS SOBRE:
– USUARIO DE API Y TIPOS DE AUTENTICACIÓN
– NUEVAS INTEGRACIONES

(function() {
if (!window.mc4wp) {
window.mc4wp = {
listeners: [],
forms : {
on: function (event, callback) {
window.mc4wp.listeners.push({
event : event,
callback: callback
});
}
}
}
}
})();

(function() {
mc4wp.forms.on(‘27333.submit’, function(form, event) {
event.preventDefault();

var submitForm = function() {
if(form.element.className.indexOf(‘mc4wp-ajax’) > -1) {
mc4wp.forms.trigger(‘submit’, [form, event]);
} else {
form.element.submit();
}
};
var previousToken = form.element.querySelector(‘input[name=_mc4wp_grecaptcha_token]’);
if (previousToken) {
previousToken.parentElement.removeChild(previousToken);
}

try {
window.grecaptcha
.execute(‘6LcoY6UZAAAAAP7Dqjtr6MPM8yGySn617oAlWVSx’, {action: ‘mc4wp_form_submit’})
.then(function (token) {
var tokenEl = document.createElement(‘input’);
tokenEl.type = ‘hidden’;
tokenEl.value = token;
tokenEl.name = ‘_mc4wp_grecaptcha_token’;
form.element.appendChild(tokenEl);
submitForm();
});
} catch(err) {
submitForm();
throw err;
}
})
})();

¿Cuáles son los detalles aquí?

Mientras que las pruebas de la API de backend verifican que las interacciones de los usuarios administradores con el sitio funcionen bien, las pruebas de la API de frontend hacen lo mismo para los usuarios del sitio web: clientes registrados y personas que solo están navegando. Por lo tanto, las operaciones que realizan son diferentes.

Discutiremos las pruebas de API de frontend en detalle.

Resumen del artículo [ ocultar ]

  • Pruebas de API frontend con Postman: conceptos básicos explicados
    • ¿Cómo obtener el token de cliente?
    • ¿Cómo probar la obtención de archivos para el Producto (Vista de tienda predeterminada, Cliente conectado)?
    • Cómo probar la obtención de archivos para el producto en la vista de tienda predeterminada/vista de tienda de Alemania
    • ¿Cómo probar la obtención de archivos solo para los Productos incluidos en el pedido para la Vista de tienda predeterminada?
    • ¿Cómo probar la obtención de archivos para el Producto con parámetros de URL adicionales?
    • ¿Cómo probar la obtención de archivos para la categoría para la vista de tienda predeterminada?
    • ¿Cómo probar la obtención de archivos por ID de archivo?
    • ¿Cómo probar la descarga del archivo?
  • Resumiendo

Pruebas de API frontend con Postman: conceptos básicos explicados

Para comenzar con las pruebas de API de interfaz para usuarios registrados, debemos iniciar sesión como cliente y obtener el token de cliente.

¿Cómo obtener el token de cliente?

Aquí, el proceso es básicamente el mismo que para obtener el token para las pruebas de la API de backend. Ingresamos el nombre de usuario y la contraseña de un cliente registrado de prueba en el cuerpo y hacemos clic en Enviar :

Así que tenemos el token de cliente :

Podemos usar el token más en la pestaña Pruebas :

¿Hecho? Así que ahora podemos pasar a probar las interacciones API básicas que tienen los clientes registrados.

Como hemos indicado anteriormente, los clientes registrados y los visitantes solo pueden ver/descargar los archivos adjuntos del producto. Estas acciones se prueban con la ayuda de Obtener consultas en Postman.

¿Cómo probar la obtención de archivos para el Producto (Vista de tienda predeterminada, Cliente conectado)?

Ahora extraeremos la información de los archivos adjuntos a un producto determinado disponible para un cliente registrado para una vista de tienda determinada . Usaremos el método Get .

En la URL, ingresamos la vista de la tienda y la identificación del producto:

Para usar el token de cliente que acaba de recibir, ingrese {{customerToken}} en el campo Token :

En el ejemplo anterior, hay 2 archivos adjuntos al producto con ID=6

  • El 1er bien está disponible para un cliente registrado:

  • El 2º no está disponible para un cliente registrado:

Veamos cómo funciona en la interfaz.

El segundo archivo no se muestra para el cliente registrado:

Tal como debería ser.

La información sobre los archivos adjuntos se muestra correctamente:

A continuación, ofrecemos nuestro enfoque para probar las interacciones de los clientes que NO han iniciado sesión para los archivos adjuntos de productos de Magento 2.

Cómo probar la obtención de archivos para el producto en la vista de tienda predeterminada/vista de tienda de Alemania

La visualización de archivos puede ser diferente para diferentes vistas de tienda.

Veamos cómo funciona para Predeterminado y, digamos, Vistas de tienda de Alemania .

Para esta tarea de prueba, necesitaremos la consulta Get nuevamente.

Ingrese la Vista de la tienda y el ID del producto en la URL para la Vista de la tienda predeterminada y la Vista de la tienda de Alemania :

Vista de tienda predeterminada :

 

Vista de la tienda de Alemania :

 

En la vista de tienda predeterminada , hay 2 archivos adjuntos al producto:


En la
vista de tienda de Alemania , solo tiene 1 archivo adjunto:

 

La información sobre los archivos adjuntos para cada vista de tienda se muestra correctamente:

 

Vista de tienda predeterminada :

 

Vista de la tienda de Alemania :

Aunque las pruebas de la API de frontend solo requieren obtener consultas , algunos casos pueden ser complicados. Describimos uno a continuación.

¿Cómo probar la obtención de archivos solo para los Productos incluidos en el pedido para la Vista de tienda predeterminada?

Esta consulta prueba obtener la información sobre los archivos adjuntos a un producto en la vista de tienda requerida . En la interfaz, estos archivos se muestran en la página Pedido .

Escribimos una consulta Get . En la URL, indicamos la Store View requerida , en la sección Paramsproduct_id , y include_in_order_only condición: 1 (Sí) :

En nuestro ejemplo, el producto con ID=6 en la Vista de tienda predeterminada tiene 2 archivos adjuntos, y la condición Incluir en el pedido se cumple solo en el segundo caso:

Debemos entrar en la configuración del módulo. En el campo Tipo de archivos adjuntos para mostrar , debemos elegir ‘Incluir en orden’ Solo en el menú desplegable:

Ahora, la consulta de búsqueda en Postman solo traerá los archivos con la configuración Incluir en orden = Sí :

¿Cómo probar la obtención de archivos para el Producto con parámetros de URL adicionales ?

Aquí analizaremos el caso en el que la salida de información en archivos adjuntos en la vista de tienda necesaria requiere agregar parámetros adicionales a la URL (producto, categoría, pedido).

Una vez más usamos la consulta Get .

En la URL indicamos la Store View, el ID del producto y los parámetros adicionales:

Hay 2 productos relacionados con el archivo:

Esto significa que el archivo se adjunta a 2 productos. En cada caso, el archivo tiene un nombre de archivo y una etiqueta separados :

Si descarga el archivo desde la página del producto, tendrá una URL separada para cada bien:

En Postman, si escribimos consultas para extraer información en el archivo adjunto utilizando solo la identificación del producto, la URL será la misma para cada bien:

¿Qué oportunidad obtenemos con un parámetro de URL adicional?

Obtenemos el mismo archivo con configuraciones separadas para cada producto:

Ver/obtener los archivos adjuntos a los productos no es la única opción en los archivos adjuntos de productos de Magento 2. Los usuarios también pueden generar/ver la información de los archivos adjuntos a toda la categoría.

¿Cómo probar la obtención de archivos para la categoría para la vista de tienda predeterminada?

Aquí mostraremos la información sobre los archivos adjuntos a una categoría de la vista de tienda necesaria . Para este asunto, necesitaremos Obtener solicitud . La vista de tienda necesaria es Predeterminada :

En la URL, especificamos la vista de la tienda y el ID de las categorías de las que pretendemos extraer la información del archivo. Aquí están los resultados esperados basados ​​en la configuración del módulo:

• El archivo 1 está adjunto a la categoría ID 4

• El archivo 2 se adjunta a las categorías ID=4,5,6

Ahora veamos cómo se procesa la información a través de Postman:


• Categoría ID 4:

 

• Categoría ID 5:

Como podemos ver, hay 2 archivos adjuntos a la categoría ID 4 y solo uno adjunto a la categoría ID 5. Esto está de acuerdo con la configuración del módulo. Por lo que la información se muestra correctamente.

¿Cómo probar la obtención de archivos por ID de archivo?

En este caso, necesitamos extraer la información del archivo para la Vista de tienda requerida (predeterminada en nuestro caso), basándonos en la ID del archivo. ¿Qué tipo de consulta debemos usar? Obtener consulta, tienes razón.

En la URL, especificamos la Vista de tienda y los ID de archivo, en la sección Parámetros :

¿Qué resultados esperar? Hay 2 archivos cargados en nuestro ejemplo:

La información sobre estos archivos se muestra correctamente:

Agregamos la identificación de un archivo inexistente (1111) a propósito. Como puede ver, Postman no informó ningún error. La herramienta solo genera los archivos que existen.

¿Cómo probar la descarga del archivo?

Enviamos la información en formato Base64 . Luego copiamos el código Base64 y lo insertamos en los decodificadores. ¡Y voilá! Obtenemos la imagen del producto. Nuevamente usamos Obtener consulta para generar los datos del archivo:

En la URL, ingresamos la Vista de tienda necesaria , en la sección Parámetros : el ID de archivo/producto/categoría.

Hay varias formas de obtener el contenido del archivo. Proporcionamos la configuración del archivo en la configuración del módulo y su representación en Postman.

• Por el ID del archivo: 

• Por el ID de archivo/producto:

• Por el ID de archivo/categoría:

Resumiendo

Probar la API de Frontend se reduce a actuar como lo hacen los clientes. Para nuestros archivos adjuntos de productos Magento 2, esto significó ver y descargar los archivos adjuntos a productos y categorías.

Después de probar la API Backend y Frontend, llegamos a la conclusión de que nuestra extensión Magento 2 es completamente funcional y exitosa.

¿Ha utilizado algunas herramientas para las pruebas de API?

Por favor, comparta su experiencia en los comentarios a continuación.