Je souhaite conserver la variable en dehors de la fonction getText(), de sorte que je puisse la faire correspondre aux dernières valeurs dans les tests. Exemple:Protractor: conserve la variable en dehors de la fonction getText()
page fichier objet:
this.numberOfAllLines = element(by.id('all_lines'));
this.tableCell = element(by.css('.table_results_lines'));
this.sumOfAllLinesText = element(by.id('sum_lines'));
fichier Spec:
var numberOfLines = '';
var newNumberOfLines = '';
describe(...
it(...
page.numberOfAllLines.getText().then(function(num) {
numberOfLines = num;
});
newNumberOfLines = numberOfLines + 10;
expect(page.tableCell.getText()).toEqual(newNumberOfLines);
// doing some clicks
expect(page.sumOfAllLinesText.getText()).toEqual(newNumberOfLines);
});
});
Cela ne répond pas à How do I return the response from an asynchronous call?.
Je suis toujours un tel noob. Merci, cela a résolu mon problème! – jurijk
Ouais .. async est toujours délicat :) – AdityaReddy
Savez-vous comment je peux multiplier les valeurs de getText() fonctions dans cet exemple. { \t 'page.numberOfAllLines.getText() puis (fonction (de num) NumberOfLines = num; }); page.winPrice.getText(). Then (fonction (prix) { \t coût = prix; }); prixSum = numberOfLines * coût; attend (page.tableCell.getText()) .Equal (priceSum); 'Est-ce que cela est même possible en raison de la nature asynchrone de Protractor? – jurijk