我有一个应用程序,其中页面重新加载/导航和 iframe 至关重要,而这些部分似乎很难用单元测试覆盖。
我希望能够写smt。像这样:
it('should fire appropriate callbacks on start and page reload', function() {
app.start();
expect(app.onStart).toHaveBeenCalled();
page.reload();
expect(app.onRestart).toHaveBeenCalled();
}
it('should know whether it runs in iframe or not', function() {
expect(app.isInIframe()).toBe(false);
iframe = createTestIframe();
expect(iframe.getApp().isInIframe()).toBe(true);
}
我所知道的单元测试框架(mocha、Jasmine、QUnit)都旨在在一页上完成整个测试套件,在顶级上下文中。
另一方面,功能测试框架(FuncUnit、TestCafé、Selenium WebDriver)似乎专注于高级抽象,例如“单击元素”、“检查元素的值”等,没有提供深入研究代码执行的能力。
免责声明:总的来说,我对测试还很陌生,所以也许我应该完全从不同的角度看待这个问题。