0

有时,我会发现其他人编写的测试依赖于页面上的特定文本(即成功消息、空警告等)

我觉得这些令人反感,通常会将它们替换为对特定选择器的测试(即。#success-message.error)或 I18n 值(即。I18n.t('foobar.success')I18n.t('form.error.missing_error')

后者似乎更具未来性,因为如果副本发生更改,那么我的测试将不会失败。但是,有些人认为,如果您不小心更改了消息,则不会将其视为失败。

在使用这些我不知道的东西时,是否有标准做法?

4

1 回答 1

0

我在我的测试中都做了:检查选择器和检查副本。如果测试由于复制更改而失败,那很好。它需要更多的维护,但更改副本的人也应该运行测试,或者您应该有一个持续集成设置,以便在测试失败时立即通知。

如果您开始运行 a/b 或多变量测试,它会变得有点复杂,但这并非不可克服……就像我说的,只是更多的维护。

IMO,维护与对代码覆盖率的信心之间的权衡是非常值得的。

于 2013-06-22T00:01:46.187 回答