serenity js可以作为Knockout js的测试工具吗?

can serenity js used as a testing tool for Knockout js?

我想知道 serenity/js 是否可以用于其他 JavaScript 框架,还是仅用于 Angular/js?

Protractor 是 Selenium WebDriver 的包装器,这意味着它可以测试 WebDriver 可以测试的任何东西。

要测试任何非 Angular 项目,您需要禁用 Angular 特定的测试同步,您可以使用以下任一方法来做到这一点:

量角器配置文件

如果您的测试只会执行非 Angular 项目,您可以通过将 browser.ignoreSynchronization = true 添加到 [=13] 来禁用所有测试的 Angular 特定同步=] 块在你的 protractor.conf.js 文件中:

exports.config = {
  // ... other config

  onPrepare: function() {
    browser.ignoreSynchronization = true;  // <-- disables synchronisation
  }
};

Serenity/JS任务

如果您的测试需要同时支持 Angular 和非 Angular 项目,您可以使用 UseAngular.disableSynchronisation()UseAngular.enableSynchronisation() 任务切换同步,如下所示:

actor.attemptsTo(
  UseAngular.disableSynchronisation(),
  // ... interact with a non-Angular app
  UseAngular.enableSynchronisation(),
  // ... interact with an Angular app
)

您可以在我关于“Cross-application testing

的文章中了解有关第二种方法的更多信息

如果此回答有帮助,请mark it as accepted,谢谢!