3 votes

Comment retourner un tableau sous forme de tableau en utilisant Javascript dans Test Cafe

J'essaie de valider l'ensemble des éléments du tableau et je veux renvoyer le tableau sous forme de tableau, puis accéder à chaque élément.

3voto

aleks-pro Points 1364

Veuillez consulter l'exemple suivant qui montre comment utiliser TestCafe pour vérifier l'état d'une table :

import { Selector, ClientFunction } from 'testcafe';

fixture `fixture`
    .page `https://jsfiddle.net/gv69jqrx/1/`;

test('Obtain array', async t => {
    await t
        .switchToIframe(Selector('#editor').find('[name="result"]'));

    const getCountries = ClientFunction(() => {
        const countries  = [];
        const columnKeys = ['country', 'capital', 'population', 'language'];
        const rows       = document.getElementsByTagName('tr');

        for (let i = 0; i < rows.length; i++) {
            const cells   = rows[i].getElementsByTagName('td');
            const country = {};

            if (!cells.length) continue;

            for (let j = 0; j < cells.length; j++)
                country[columnKeys[j]] = cells[j].textContent;

            countries.push(country);
        }

        return countries;
    });

    await t
        .expect(getCountries()).eql([
            { 
                country:    'USA',
                capital:    'Washington, D.C.',
                population: '309 million',
                language:   'English'
            },
            { 
                country:    'Sweden',
                capital:    'Stockholm',
                population: '9 million',
                language:   'Swedish'
            }
         ]);
});

Si votre scénario est différent, décrivez-le plus en détail. Le code de test et l'exemple de page de test seraient très utiles.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X