Estoy tratando de filtrar algunas pruebas que nos hemos estado saltando. "test.skip" es la forma predeterminada de omitir las pruebas, pero TestCafe ha tenido problemas con las ejecuciones congeladas después de omitir una prueba.
Mientras tanto, tienen una opción de filtro para su archivo testcaferc que me gustaría usar para ignorar básicamente las pruebas. Dado que las pruebas ignoradas no se muestran en el informe usando la opción de filtro, espero que eso signifique que TestCafe no se congelará después de ignorar la prueba.
Su documentación dice cómo usar el filtro para ejecutar solo pruebas específicas, pero carece del aspecto negativo de esto:
https://testcafe.io/documentation/402638/reference/configuration-file#filter
Pude filtrar una sola prueba sin problemas, pero tenemos varias pruebas que debemos ignorar por ahora y cuando intento agregar una nueva expresión regular, la ejecución se detiene y dice "Ninguna prueba coincide con su filtro".
Estoy buscando una manera de tener múltiples expresiones regulares para que TestCafe sepa ignorar múltiples pruebas.
Esto es lo que funciona:
"filter": { "testGrep": "^((?!user_is_able_to_add_a_section_column_row_and_element_to_editor).)*$" }Esto es lo que no funciona:
"filter": { "testGrep": [ "^((?!user_is_able_to_add_a_section_column_row_and_element_to_editor).)*$", "^((?!pop_up_element_displays_during_page_preview).)*$" ] }La opción de configuración testGrep solo admite una sola expresión regular. Puede especificar una expresión regular con alternancia para ignorar varias pruebas:
"filter": { "testGrep": "^(?!.*(Test One|Test Two)).*$" }Otra forma es usar el archivo de configuración JS en lugar de JSON. Le permite especificar un método en el que puede filtrar las pruebas de la forma que desee:
module.exports = { src: './tests/test.js', filter: (testName => !testName.includes('Test One') && !testName.includes('Test Two')) }Este enfoque es similar al método Runner.filter .