我有一个js
函数,我希望使用QUnit
进行单元测试。这是一个简单的函数,我传递了我想从表单中隐藏的字段名称。我也在这里使用Mocking框架:[link] https://github.com/ambek/XrmPage-Mock
function HideField(field) {
Xrm.Page.getControl(field).setVisible(false);
};
My Tests.js文件如下所示:
var Xrm;
QUnit.test("Testing Hide Field Function", function (assert) {
var PageControls = new Array();
PageControls.push(CreateSimpleControlWithAttribute("NewField", "M", "Type of Residence"));
var page = new XrmPageMock("{607C16D1-7C53-4023-B20B-13E4F1C6A9D3}", PageControls, 1);
Xrm = new XrmPageMock(page);
HideField('NewField');
assert.equal(XRM.page.getControl('NewField').getVisible(),false, 'Passsed');
});
在执行我的测试时,我收到此错误:
无法获得财产' getControl'未定义或空引用
有谁知道为什么我的嘲笑/假装出错了?
答案 0 :(得分:0)
以下陈述中只是一个拼写错误:
assert.equal(XRM.page.getControl('NewField').getVisible(),false, 'Passsed');
新陈述是(更正单词"页面")
assert.equal(XRM.Page.getControl('NewField').getVisible(),false, 'Passsed');