自定义命令或实用程序类/函数?



我正在与一个团队合作,该团队在Nightwatch.js中有一个项目。他们定义了几乎所有的命令:

  • Datetime作为命令(返回当前日期,一个周期内的天数数组等)
  • 以命令形式获取数据的SQL查询

对我来说,其中一些更适合实用程序类,但他们更喜欢将它们作为命令,因此他们可以通过browser.Command访问它们。

正确的方法或建议是什么?对我来说,所有的in命令看起来都很奇怪,但代码看起来也更干净,因为你不需要做导入。

谢谢,

这个问题可能会因为基于意见而被关闭,但是无论如何。

我同意不是所有的实用程序都应该是命令。我会通常看到命令的范围更多地与用户在浏览器中的操作有关,或者是一种对用户操作进行分组的方式,例如,在典型的系统中,我会看到像- 这样的命令
  • login(),将点击分组到文本字段,输入用户名密码,最后点击登录按钮。
  • addUser(),这可能是一个小的,但重复的命令组,例如,将用户添加到管理面板。
  • dragTo(x),它可能处理一些拖放功能。

等。

我不认为日期utils等是命令,但正如你所说,只是实用程序函数,更多的是关于测试的底层实现,而不是用户如何与系统交互。

虽然不是守夜人,也许可以从赛普拉斯自定义命令的最佳实践中得到一些建议- https://docs.cypress.io/api/cypress-api/custom-commands#Best-Practices

最新更新