我的属性名称为items:
,它正在等待array
列表。
该代码块的正常运行示例如下:
// This usage works perfectly with `getFirstTest()` function
// And creates a list of Array fine!
harness.start(
{
group: 'UI Tests',
testClass: Siesta.Test.ListClass,
items: [
{
group: 'First Group',
items: [
getFirstTest('Foo'),
getFirstTest('Bar'),
getFirstTest('Alpha'),
getFirstTest('Beta'),
getFirstTest('Zet')
]
}
]
}
);
但是您会注意到有很多迭代语句,因此我尝试使用forEach
和for
循环将getFirstTest()
函数声明为动态,但是我无法呈现array
列表,上面没有问题,但是无法创建列表!
我还需要在parameters
函数上设置多个getFirstTest
:
例如:getFirstTest('Foo', 'SecondParam')
harness.start(
{
group: 'UI Tests',
testClass: Siesta.Test.ListClass,
items: [
{
group: 'First Group',
items: this.firstGrpSubmodules
}
]
}
);
function firstGrpSubmodules () {
let implementedCases = [
'Foo', 'Bar', 'Alpha', 'Beta', 'Zet'
];
// I've tried several ways to achive but couldn't
// Usage 1: The for loop
// for (let i=0; i<implementedCases.length; i++) {
// let submodules = implementedCases[i];
//
// getFirstTest(submodules);
// }
// Usage 2: forEach
// implementedCases.forEach(function(submodule) {
// getFirstTest(submodule);
// });
}
我在这里缺少什么,如何实现第二实施? 预先感谢!
答案 0 :(得分:4)
使用Array.prototype.map
:
harness.start({
group: 'UI Tests',
testClass: Siesta.Test.ListClass,
items: [
{
group: 'First Group',
items: ['Foo', 'Bar'].map(getSalesTest),
}
]
});