In einem Cypress Testlauf möchte ich einen Wert in meiner Testdatei fileWithTest.js lesen der aus einer Funktion aus einer exkludierten Datei fileWithObjects.js kommt. Es gibt nun seitens Cypress keine Fehlermeldung mehr beim Testlauf, Status grün, aber bei der Wertausgabe erscheint die Meldung [object Undefined].
Der Ausschnitt aus dem Testcode bildet folgende Schritte ab:
Login,
Navigiert zu einer Seite,
Liest den Wert aus einer ganz bestimmte Tabellenzelle aus (mit einer Funktion aus einer anderen Datei)
Seitenwechsel,
Den mit der exkludierten Funktion gewünschten ausgelesenen Wert in einem Input Feld reinschreiben zur Testausgabe.
Dies ist der Abschnitt der exkludierten Funktion
fileWithObjects.js
Dies ist die Testdatei die die exkludierte Funktion aufruft:
fileWithTest.js
Resultat:
Diese Ausgabe erscheint im Input Feld als Ausgabewert:
[object Undefined]
Ich fand bisher bei meiner Recherche nix passendes und gehe davon aus, dass mir noch etwas grundlegendes fehlt, vielleicht ist nein Ansatz hier falsch gewählt?
Ich fnde den Fehler nicht oder die Lösung, damit es korrekt durchläuft, also mit der Ausgabe des zuvor aus einer Tabellenzelle ausgelesenen Wertes.
Anmerkung: Das Auslesen der Tabellenzellen nachd iesem angewendeten Prinzip funktioniert, habe ich schon öfters angewendet.
Ich dachte an sowas:
www.geeksforgeeks.org
Aber bei mir funktioniert das nicht.
Habe ich eine Idee?
Wo ist mein Fehler?
Thank you!
Der Ausschnitt aus dem Testcode bildet folgende Schritte ab:
Login,
Navigiert zu einer Seite,
Liest den Wert aus einer ganz bestimmte Tabellenzelle aus (mit einer Funktion aus einer anderen Datei)
Seitenwechsel,
Den mit der exkludierten Funktion gewünschten ausgelesenen Wert in einem Input Feld reinschreiben zur Testausgabe.
Dies ist der Abschnitt der exkludierten Funktion
fileWithObjects.js
Javascript:
functionForSpecificTableCell_Month2() {
var specificValueFromTableCell_Month2 = ''
cy.get('.table1 > tbody > tr.tabele_row3 > td:nth-child(1)').each(($e1, index, $list) => {
var titletext=$e1.text()
if(titletext.includes('A Specific Headline')) {
cy.get('.table1 > tbody > tr.table_row3 > td:nth-child(3)').eq(index).then(function(amount) {
var specificValueFromTableCell_Month2 = amount.text()
return specificValueFromTableCell_Month2.trim()
})
}
})
return specificValueFromTableCell_Month2
}
Dies ist die Testdatei die die exkludierte Funktion aufruft:
fileWithTest.js
Javascript:
describe('Test Read From Excluded Function', ()=> {
it.only('Read a value from a function that has got to be included', () => {
cy.wait(500)
cy.openHomePage()
// Login
cy.fixture('role').then(roledata => {
const username = roledata[1].name
const pw = roledate[1].password
onLoginPage.userInput(username)
onLoginPage.pwInput(pw)
})
onLoginPage.buttonEnter()
cy.wait(500)
cy.wait(500)
// Navigate to page
navigateGoTo.openTopNavi()
navigateGoTo.visitWantedPage()
// Get the value from a function of a different file
let value = onPageWithTableCellObject.functionForSpecificTableCell_Month2()
navigateGoTo.openTopNavi()
navigateGoTo.wantedPage()
// Insert the value from the function of the other file into an input field
onWantedPage.Inputfiled2(toString(value))
})
}
Resultat:
Diese Ausgabe erscheint im Input Feld als Ausgabewert:
[object Undefined]
Ich fand bisher bei meiner Recherche nix passendes und gehe davon aus, dass mir noch etwas grundlegendes fehlt, vielleicht ist nein Ansatz hier falsch gewählt?
Ich fnde den Fehler nicht oder die Lösung, damit es korrekt durchläuft, also mit der Ausgabe des zuvor aus einer Tabellenzelle ausgelesenen Wertes.
Anmerkung: Das Auslesen der Tabellenzellen nachd iesem angewendeten Prinzip funktioniert, habe ich schon öfters angewendet.
Ich dachte an sowas:

JavaScript Return Statement - GeeksforGeeks
Your All-in-One Learning Portal: GeeksforGeeks is a comprehensive educational platform that empowers learners across domains-spanning computer science and programming, school education, upskilling, commerce, software tools, competitive exams, and more.

Habe ich eine Idee?
Wo ist mein Fehler?
Thank you!