Javascript 将多个值与一个预期值匹配,始终尝试仅匹配第一个值,但失败

Javascript 将多个值与一个预期值匹配,始终尝试仅匹配第一个值,但失败,javascript,testing,jasmine,protractor,Javascript,Testing,Jasmine,Protractor,我使用下面提到的代码将多个值与一个预期值进行比较,如果文本与其中任何一个匹配,我的测试应该通过: Promise.all([Summ,Desc,Comment]).then(function(values){ console.log("values = " +values); expect(values[0]||values[1]||values[2]).toMatch('searchtxt'); }); 但是对于这段代码,它总是首先尝试匹配(值[0]),如果不匹配,那么我的测

我使用下面提到的代码将多个值与一个预期值进行比较,如果文本与其中任何一个匹配,我的测试应该通过:

Promise.all([Summ,Desc,Comment]).then(function(values){
    console.log("values = " +values);
    expect(values[0]||values[1]||values[2]).toMatch('searchtxt');
});
但是对于这段代码,它总是首先尝试匹配(值[0]),如果不匹配,那么我的测试将失败

如何更改它,以便量角器查找所有3个值,然后如果其中任何一个值与我的测试匹配,则应通过测试

如果他们中的任何一个符合我的测试应该通过

在这种情况下,您不需要任何特殊的内容,只需连接以下值:

expect(values[0] + values[1] + values[2]).toMatch('searchtxt');
请在此处查看问题的后续处理:

    • 试试这个

      expect(values[0] == searchtxt || values[1] == searchtxt || values[2] == searchtxt).toEqual(true);
      

      @soniasharma顺便说一句,如果你有兴趣,我已经创建了一个跟进:。是的,当然谢谢@alecxe。