我已經安裝了siesta lite來測試我的ExtJs 4應用程序。 我想運行一個測試,取決於我的應用程序的window.xxx和window.yyy的值。 所以如果xxx = 1和yyy ='xyz',我想運行一個特定的測試文件讓我們說test1.js。我讀了siesta documentation但我找不到任何東西。Siesta - 根據一定的條件運行子測試(從另一個測試文件)
這裏是我的代碼:
var harness = new Siesta.Harness.Browser.ExtJS()
window.harnessObj = harness;
harness.configure({
title : 'My Tests',
preload : [
/* '../resources/extjs-4.2/resources/css/ext-all.css',
'../resources/extjs-4.2/ext-all-debug.js',
'../resources/json/textLabels.js',*/
]
});
harness.start(
{
group: 'Unit Tests',
pageUrl: '../index.html?unittest',
items:
[
{
title : 'PopUpWindow',
url : 'tests/PopUpWindow.js'
},
{
title : 'S_0-R_PjM',
url : 'tests/S_0-R_PjM.js'
}
]
}
);
harness.on('testsuitestart', function (event, harness)
{
//debugger;
console.log('I fucking love Testing')
}, this,
{ single : true }
)
我想運行「測試/ S_0-R_PjM.js」裏面,這取決於窗口的某個值對象,它是設置「測試/ S_0-R_PjM.js」由我的應用程序index.html。
我index.js看起來像這樣:// 還支持:startTest(函數(T){
describe(function(t) {
t.diag("PfalzkomApp Loading Test");
t.ok(Ext, 'ExtJS has been loaded');
t.ok(Ext.Window, 'ExtJS.Window has been loaded');
t.ok(window.xxx, loaded with value :' + window.xxx);
t.ok(window.yyy, loaded with value :' + window.yyy);
var status = parseInt(window.xxx);
var role = window.yyy;
switch(status) {
case 111:
switch(role)
{
case "abc":
debugger;
// How to load another test file(tests/S_0-R_PjM.js) and start that test here !!!
break;
case "def":
break;
}
}
t.done();
})
//更新問題 - 我希望把裏面的另一測試文件,示例代碼和需要
StartTest(function(t) {
t.diag("Case: Status: Neu and Role:PjM ");
//S_0-R_PjM
t.ok(Ext, 'ExtJS has been loaded');
t.done(); // Optional, marks the correct exit point from the test
})
當有一個人可以指導我打電話了嗎?
只需將'it()'包裝在if語句中即可。 –
@EvanTrimboli我想加載另一個測試文件。我不想將所有代碼寫入一個文件。那麼如何實現呢?謝謝 –