rapporteur - la différence entre toBe(la vérité) et toBeTruthy()
comme le dit le titre-
est-il une différence entre (par exemple)
expect(element).isDisplayed().toBeTruthy();
et
expect(element).isDisplayed().toBe(truth);
et si oui, quelle est la différence?
grâce
OriginalL'auteur user2880391 | 2015-02-24
Vous devez vous connecter pour publier un commentaire.
Beaucoup de choses sont
Truthy
(c'est à dire tout ce qui n'est pas l'un des: false, 0, "", indéfini, null, NaN).Donc
passe. Mais:
échoue.
Cela étant dit, si vous savez que vous êtes le test d'un booléen, pour moi, à l'aide de
toBeTruthy
ressemble plus belle.Non, les deux toBeTruthy et toBe peut être pour quoi que ce soit.
toBe
passe seulement si c'est une correspondance directe, maistoBeTruthy
passe pour tout truthy valeur. Peut-être lire ceci: safaribooksonline.com/library/view/javascript-testing-with/...Si vous connaissez le résultat devrait être
true
, vous pourriez aussi bien ne pas le tester. Le point de contrôle est de faire face à des situations inattendues. Ainsi, l'utilisationtoBe(true)
comme vous le feriez pour toujours utiliser===
au lieu de==
.OriginalL'auteur hankduan
Même si ce n'est pas une nouvelle question, j'ai pensé qu'il mérite une réponse exacte.
évalue à "pomme" = = = true. (réel === prévu dans le jasmin code)
Je préfère
De cette façon, vous savez que vous êtes de ne pas obtenir un "orange". Sur l'autre main.
évaluer 'pomme'!!'apple' (!!réel dans le jasmin code). Donc, pas de pas de "pomme"
OriginalL'auteur jamesRH