说明
现在我们在应用程序中有了一个测试文件夹,我们可以开始增加测试范围了。
实际上,到目前为止,我们添加到应用程序中的每个功能都需要一个单独的测试用例。到目前为止,我们完全忽略了这一点,所以让我们为步骤23中的自定义格式化器函数添加一个简单的单元测试。我们将通过比较来自资源包的文本来测试状态的长文本是否正确。
注意
在本教程中,我们测试一个简单实现的用例。如果您想了解更多关于QUnit测试的知识,请查看我们的测试教程,特别是第2步:第一个单元测试。
预览
现在可以对格式化器进行单元测试了
代码
您可以在演练-步骤28查看和下载所有文件。
此步骤的文件夹结构
我们在test文件夹下添加了一个新的文件夹unit,在model子文件夹中放置格式化器单元测试。文件夹结构与应用程序结构相匹配,可以轻松找到相应的单元测试。
webapp/test/unit/model/formatter.js
/*global QUnit*/
sap.ui.define([
"sap/ui/demo/walkthrough/model/formatter",
"sap/ui/model/resource/ResourceModel"
], function (formatter, ResourceModel) {
"use strict";
QUnit.module("Formatting functions", {
beforeEach: function () {
this._oResourceModel = new ResourceModel({
bundleUrl: sap.ui.require.toUrl("sap/ui/demo/walkthrough") + "/i18n/i18n.properties"
});
},
afterEach: function () {
this._oResourceModel.destroy();
}
});
QUnit.test("Should return the translated texts", function (assert) {
// Arrange
// this.stub() does not support chaining and always returns the right data
// even if a wrong or empty parameter is passed.
var oModel = this.stub();
oModel