在JavaScript中运行时单元测试
问题描述:
我一直在使用像茉莉花和Qunit这样的单元测试框架测试JavaScript代码。但是,所有这些测试框架只能在加载时,但我想开始在运行时的测试案例,比如我想点击一个按钮像下面的茉莉花测试用例测试对象的价值,在JavaScript中运行时单元测试
function btnClick() {
var temp++;
describe("Test Suite Inside Button Click", function() {
it("To test true value", function() {
expect(temp).not.toEqual(-1);
});
});
};
如何动态运行测试用例?
答
下面是你是如何做到的。
- 调用jasmineEnv在运行时间和运行测试
- 请注意,我清理出记者的div只是为了清理 输出 - 这可能不是你的情况,以必要的。
- 我的setTimeout只是到div加载到页面
-
看到它在action here
var testFunc = function() { //this is optional- I'm just clearing the reporter out to run it on fiddle. $('.jasmine_html-reporter').remove(); var jasmineEnv = jasmine.getEnv(); describe('test', function() { it('sample test', function() { console.log('test ran'); expect(true).toBe(true); }); }); jasmineEnv.execute() } setTimeout(function() { $('#myElement').click(testFunc); }, 0);
我不明白。当你真的在应用程序中手动点击按钮时,你想运行测试吗? – Amygdaloideum