let rowsLenght;describe('The example shows how to use Data Driven Testing using Excel file.', () => {before(() => {cy.task('readXlsx', { file: 'cypress/fixtures/excelData.xlsx', sheet: "Sheet1" }).then((rows) => {rowsLenght = rows.length;cy.writeFile("cypress/fixtures/xlsxData.json", { rows })})cy.visit(Cypress.config('baseUrl'));})it("example shows how to use data from Excel file.", () => {cy.fixture('xlsxData').then((data) => {for (let i = 0; i < rowsLenght; i++) {cy.get('#username').type(data.rows[i].testData1);}})});});
When I try to execute the test - everything works.
If I rename the file extension from "ts" to "js" - the error is gone.
I found two solutions.
// @ts-ignore
comment, to ignore the compiler alert.let rowsLength;describe('The example shows how to use Data Driven Testing using Excel file.', () => {before(() => {cy.task('readXlsx', { file: 'cypress/fixtures/excelData.xlsx', sheet: "Sheet1" }).then((rows) => {// @ts-ignorerowsLength = rows.length;cy.writeFile("cypress/fixtures/xlsxData.json", { rows })})cy.visit(Cypress.config('baseUrl'));})it("example shows how to use data from Excel file.", () => {cy.fixture('xlsxData').then((data) => {for (let i = 0; i < rowsLenght; i++) {cy.get('#username').type(data.rows[i].testData1);}})});});
any
, because the variable is "unknown".let rowsLength:describe('The example shows how to use Data Driven Testing using Excel file.', () => {before(() => {cy.task('readXlsx', { file: 'cypress/fixtures/excelData.xlsx', sheet: "Sheet1" }).then((rows: any) => {rowsLength = rows.length;cy.writeFile("cypress/fixtures/xlsxData.json", { rows })})cy.visit(Cypress.config('baseUrl'));})it("example shows how to use data from Excel file.", () => {cy.fixture('xlsxData').then((data) => {for (let i = 0; i < rowsLenght; i++) {cy.get('#username').type(data.rows[i].testData1);}})});});