Considere los siguientes casos de prueba:
describe("parent1", () => { it("mytest", () => { // ... }); }); describe("parent2", () => { it("mytest", () => { // ... }); }); describe("parent1", () => { it("myothertest", () => { // ... }); }); describe("parent2", () => { it("myothertest", () => { // ... }); }); Básicamente, quiero poder ejecutar, a través de la línea de comandos, mytest bajo parent1 .
Si pruebo lo siguiente:
mocha --grep 'mytest'Terminará ejecutándose:
parent1/mytestparent2/mytestMientras que si intento:
mocha --grep 'parent1'Terminará ejecutándose:
parent1/mytestparent1/myothertest¿Cómo lograr esto?
En realidad, fue bastante simple ya que esto se evalúa como una expresión regular:
mocha --grep 'parent1 mytest'Usar un espacio es la solución que parece. Puedo señalar con éxito pruebas como esa.
También funciona si los nombres de las pruebas tienen espacios en ellos:
describe("parent1", () => { it("my test", () => { console.log("AAA"); }); }); describe("parent2", () => { it("my test", () => { console.log("BBB"); }); }); describe("parent1", () => { it("my other test", () => { console.log("CCC"); }); }); describe("parent2", () => { it("my other test", () => { console.log("DDD"); }); });Correr:
mocha --grep 'parent1 my test'Funcionaría como se esperaba.