gpt4 book ai didi

protractor - 一个期望中的多个条件

转载 作者:行者123 更新时间:2023-12-05 05:22:37 25 4
gpt4 key购买 nike

我想验证 AssignedAllUsers 列表的文本可以包含 test1 或 test2 但不应包含 test3

我正在使用以下但不确定我收到以下错误的代码有什么问题:AllAssignee.toContain 不是函数

 this.IncList = element.all(by.repeater("incident in $ctrl.allIncidents"));

this.AssignedAllUsers = this.IncList.all(by.css('[aria-label="Change assignee to "]'));


AssignedAllUsers.getText().then(function(AllAssignee){
console.log("AllAssignee = "+AllAssignee);
expect((AllAssignee.toContain(Logindata.Username0)) || (AllAssignee.toContain(Logindata.Username1)) && (AllAssignee.not.toContain(Logindata.Username2)));
});

最佳答案

您的错误是语法问题。 toContain 属于正在测试的值之外,换句话说,在您的 expect 语句之后的第一组括号之外。

你有这个:expect((AllAssignee.toContain(Logindata.Username0))。您还有一组额外的括号,但我认为这并不重要。

您需要关闭 AllAssignee 调用,它应该是:expect(AllAssignee).toContain(Logindata.Username0)

要回答您的其他问题,实际上没有必要在一个 expect 语句中完成。由于列表永远不应包含 test3,因此这是您的第一个断言:expect(AllAssignee).not.toContain(test3);

至于您的其他期望值,如果您不知道会出现哪一个,只需创建一个数组并将两个可能的值放入其中。然后您可以断言数组包含 test1 或 test2:

var myArray = ['test1', 'test2'];
expect(myArray).toContain(AllAssignee);

另请参阅有关 expecting items items in an array 的相关问题

关于protractor - 一个期望中的多个条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39880504/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com