[英]Run intern functional tests against static web app on localhost
我有一個靜態網絡應用程序。 HTML,JS(requirejs模塊)和一些CSS。 當前,“ serverUrl”是通過屬性模塊設置的,我可以“請求”並使用其中的值:
define({
serverUrl: 'https://some.api/path/'
})
我具有Intern設置,可以在瀏覽器中使用src / index.html作為入口點運行功能測試。
return this.remote
.get(require.toUrl('src/index.html'))
給定serverUrl
在屬性文件中進行了硬編碼,我試圖找到一種對Web應用程序運行測試的方法,其中serverUrl
指向localhost:1234/someFakeServer
以便可以測試錯誤情況等。
我已經拖網了,但是找不到任何人在做與我相似的遠程操作,這讓我覺得我做的事情顯然是錯誤的。 有一些使用配置模塊的NODE應用程序解決方案,但是由於我從來沒有“啟動”我的Web應用程序-它只是文件,因此這些文件對我不起作用。
我已經考慮過一些解決方案,但無法解決如何實現:
假設Intern可以訪問屬性文件,則只需讓Intern加載屬性文件並將服務器URL從中拉出即可。 如果您有多個潛在的屬性文件,則可以在Intern配置中設置要使用的屬性文件,或將其作為自定義命令行變量傳遞(該變量將用於在Intern配置中設置屬性)。 測試模塊可以從Intern的配置中獲取屬性文件的名稱,然后加載相關文件。 它可能看起來像這樣(未經測試):
// intern config
define({
// ...
propertiesFile: 'whatever',
})
// test file
define([ 'intern', ... ], function (intern, ...) {
registerSuite({
// ...
'a test': function () {
var did = this.async();
var remote = this.remote;
require([
intern.config.propertiesFile
], dfd.callback(function (props) {
return remote.get(props.url)
.otherStuff
});
}
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.