Unit testing 打字脚本的业力-can';我无法让代理服务器为我的文件提供服务(否则我无法找到它) 更新
当我把我的KioskTemplates.html放在测试文件夹的根目录下时,这就起作用了。没有办法使用相对路径吗?或者我需要将我的“basePath”设置为karma.conf文件中的最低路径吗 所以现在我想做的是:Unit testing 打字脚本的业力-can';我无法让代理服务器为我的文件提供服务(否则我无法找到它) 更新,unit-testing,typescript,karma-jasmine,Unit Testing,Typescript,Karma Jasmine,当我把我的KioskTemplates.html放在测试文件夹的根目录下时,这就起作用了。没有办法使用相对路径吗?或者我需要将我的“basePath”设置为karma.conf文件中的最低路径吗 所以现在我想做的是: 我有一个Typescript模块,我正试图用Karma/Jasmine进行测试 此模块有一个类,其方法名为renderUI 此方法使用jQuery$.get方法从HTML文件中获取胡子模板 我想用Karma/Jasmine来测试一下 我将文件包含在karma.conf.js中,带有
public renderUI() {
var visitReasonData = this.setupVisitReasonData()
var thePromise:Observable<any> = new Observable(observer => {
$.get('KioskTemplates.html', templates => {
let theTemplate = $(templates).filter('#tmpVisitReasons').html();
let html = Mustache.to_html(theTemplate, visitReasonData);
$('#tblVisitReasons').html(html);
applyFontSize('.Panels', this.page);
changeColorsFromArray([
'.fa-circle-thin','.fa-check','.fa-square-o','.fa-check-square-o','.fa-arrow-circle-o-right','.fa-arrow-circle-o-left','.fa-text-height'],
'.formbutt',
'background-color'
)
window.scrollTo(0, 0);
}).done(() => { observer.next(true) })
})
return thePromise
}
错误
Chrome 60.0.3112 (Windows 7 0.0.0): Executed 218 of 218 (1 FAILED) (6.172 secs / 5.603 secs)
21 09 2017 11:23:10.577:INFO [compiler.karma-typescript]: Compiling project using Typescript 2.5.2
21 09 2017 11:23:11.282:ERROR [compiler.karma-typescript]: node_modules/@types/jquery/index.d.ts(2957,63): error TS2304: Cannot find name 'Iterable'.
21 09 2017 11:23:11.282:ERROR [compiler.karma-typescript]: ../../../Websites/VirtualOneStop/Vos/vosnet/JavaScript/StaffEfficiency/node_modules/rxjs/Observable.d.ts(58,60): err
or TS2693: 'Promise' only refers to a type, but is being used as a value here.
21 09 2017 11:23:11.527:INFO [compiler.karma-typescript]: Compiled 17 files in 942 ms.
21 09 2017 11:23:12.166:INFO [bundler.karma-typescript]: Bundled imports for 1 file(s) in 138 ms.
21 09 2017 11:23:12.326:INFO [watcher]: Changed file "C:/[hidden]/[hidden]/[hidden]/[hidden]/[hidden]/[hidden]/Source/Websites/VirtualOneStop/Vos/vosnet/JavaScript/Sta
ffEfficiency/source/KioskVisitReason.ts".
21 09 2017 11:23:12.340:INFO [watcher]: Changed file "C:/Users/[hidden]/[hidden]/[hidden]/Temp/karma-typescript-bundle-23924qLtCs3Pz64A0.js".
21 09 2017 11:23:12.848:WARN [web-server]: 404: /absoluteC:/[hidden]/[hidden]/[hidden]/[hidden]/[hidden]/[hidden]/Source/Testing/JavascriptUnitTests/StaffEfficiency/no
de_modules/font-awesome/fonts/fontawesome-webfont.woff2?v=4.7.0
21 09 2017 11:23:12.856:WARN [web-server]: 404: /absoluteC:/[hidden]/[hidden]/[hidden]/[hidden]/[hidden]/[hidden]/Source/Testing/JavascriptUnitTests/StaffEfficiency/no
de_modules/font-awesome/fonts/fontawesome-webfont.woff?v=4.7.0
........21 09 2017 11:23:13.021:WARN [web-server]: 404: /absoluteC:/[hidden]/[hidden]/[hidden]/[hidden]/[hidden]/[hidden]/Source/Testing/JavascriptUnitTests/StaffEffic
iency/node_modules/font-awesome/fonts/fontawesome-webfont.ttf?v=4.7.0
........................................................................
................................................................................
......................................................21 09 2017 11:23:14.026:WARN [web-server]: 404: /base/KioskTemplates.html
LOG: true
...
LOG: 0
.
Chrome 60.0.3112 (Windows 7 0.0.0): Executed 218 of 218 SUCCESS (1.241 secs / 0.62 secs)
所以我终于明白了 我的问题是,
basePath
值需要真正成为基础
因此,与其这样做
config.set({
// base path that will be used to resolve all patterns (eg. files, exclude)
basePath: '',
// frameworks to use
// available frameworks: https://npmjs.org/browse/keyword/karma-adapter
frameworks: ['jasmine', 'karma-typescript'],
// list of files / patterns to load in the browser
files: [
{ pattern: "../../../../Websites/VirtualOneStop/Vos/vosnet/OneStopEfficiency/KioskTemplates.html", included: false, served: true, nocache: true },
{ pattern:"../../../../Websites/VirtualOneStop/Vos/vosnet/JavaScript/StaffEfficiency/source/**/*.ts"},
{ pattern:"../../../../Testing/JavascriptUnitTests/StaffEfficiency/VOSGreeter/KioskVisitReasonsTest.ts"},
],
proxies: {
"/KioskTemplates.html": "/base/KioskTemplates.html"},
我现在正在做这个
config.set({
// base path that will be used to resolve all patterns (eg. files, exclude)
basePath: '../../../../../Source',
// frameworks to use
// available frameworks: https://npmjs.org/browse/keyword/karma-adapter
frameworks: ['jasmine', 'karma-typescript'],
// list of files / patterns to load in the browser
files: [
{ pattern: "Websites/VirtualOneStop/Vos/vosnet/OneStopEfficiency/KioskTemplates.html", included: false, served: true, nocache: true },
{ pattern:"Websites/VirtualOneStop/Vos/vosnet/JavaScript/StaffEfficiency/source/**/*.ts"},
{ pattern:"Testing/JavascriptUnitTests/StaffEfficiency/VOSGreeter/KioskVisitReasonsTest.ts"},
],
proxies: {
"/KioskTemplates.html": "/base/Websites/VirtualOneStop/Vos/vosnet/OneStopEfficiency/KioskTemplates.html"},
config.set({
// base path that will be used to resolve all patterns (eg. files, exclude)
basePath: '../../../../../Source',
// frameworks to use
// available frameworks: https://npmjs.org/browse/keyword/karma-adapter
frameworks: ['jasmine', 'karma-typescript'],
// list of files / patterns to load in the browser
files: [
{ pattern: "Websites/VirtualOneStop/Vos/vosnet/OneStopEfficiency/KioskTemplates.html", included: false, served: true, nocache: true },
{ pattern:"Websites/VirtualOneStop/Vos/vosnet/JavaScript/StaffEfficiency/source/**/*.ts"},
{ pattern:"Testing/JavascriptUnitTests/StaffEfficiency/VOSGreeter/KioskVisitReasonsTest.ts"},
],
proxies: {
"/KioskTemplates.html": "/base/Websites/VirtualOneStop/Vos/vosnet/OneStopEfficiency/KioskTemplates.html"},