Actualmente escribí un conjunto de especificaciones para probar en la Matriz de acceso de usuarios (diferentes tipos de usuarios con diferentes derechos de Crear/Editar/Ver en las funciones).
Actualmente implementado así
describe('Test Description', function() { before(function() { // before test implementation }); beforeEach(function() { // beforeEach test implementation }); describe('A', function() { it(`should display Hello`, function() { // test implementation }); }); describe('B', function() { it(`should display Hello`, function() { // test implementation }); }); describe('C', function() { it(`should display Hello`, function() { // test implementation }); }); });Estoy tratando de "agrupar"
it(`should display Hello`, function() { // test implementation }); aquí para ser reutilizable describe() o it() para archivos de especificaciones actuales/diferentes en lugar de tener el mismo código en todas partes, ya que solo estoy registrando diferentes tipos de usuarios en cada archivo de especificaciones y estas especificaciones generalmente tendrán el mismo describe() o it() bloques.
Lo intenté
describe('Test Description', function() { before(function() { // before test implementation }); beforeEach(function() { // beforeEach test implementation }); describe('A', function() { itDisplayHello(); }); describe('B', function() { itDisplayHello(); }); describe('C', function() { itDisplayHello(); }); }); const itDisplayHello = () => { it(`should display Hello`, function() { // test implementation }); };y obtuve este error en tiempo de ejecución
The following error originated from your test code, not from Cypress. > Cannot access 'itDisplayHello' before initialization When Cypress detects uncaught errors originating from your test code it will automatically fail the current test. Cypress could not associate this error to any specific test. We dynamically generated a new test to display this failure.Cualquiera con consejos o sugerencias sería muy apreciado aquí, ¡Gracias!
Eso no es demasiado difícil. Tal vez cambie de la función de flecha a la función normal, porque Javascript los "levantará" (como si lo pusiera en la parte superior de la especificación)
Ref Elevación
function itDisplayHello() { it(`should display Hello`, function() { // test implementation }); }O coloque la versión de flecha en la parte superior de la especificación.