當然,你有幾個選項,它們都涉及編寫單元測試(不是功能測試)。一種是直接使用Intern的client.html
在瀏覽器中運行單元測試,另一種是使用WebDriver(intern-runner
)在瀏覽器中運行它們。
你的單元測試會加載你想要測試的任何類,實例化它們的一個實例,做出斷言等。由於你的單元測試將在瀏覽器中運行,因此他們將有權訪問DOM。
請注意,您的測試不會加載測試頁面,它們會加載代碼模塊。因此,測試可能看起來像:
define([
'intern!object', 'intern/chai!assert', 'app/View'
], function (registerSuite, assert, View) {
var view;
registerSuite({
name: 'app/View',
afterEach: function() {
// cleanup the view after each test
view.remove();
view = null;
},
someTest: function() {
var view = new View();
// run tests on the view
}
});
要使用webdriver的運行測試,在您的實習生配置列出它suites
而非functionalSuites
,然後在webdriver的模式(intern-runner
或intern run -w
)運行的實習生。
要(如果使用實習生-CLI intern serve
)在瀏覽器客戶端運行測試,開始它在你的項目目錄的靜態服務器,打開瀏覽器,並瀏覽到http://localhost:<port>/node_modules/intern/client.html?config=tests/intern
(假設你的測試配置爲tests/intern.js
)。
很棒!謝謝! –