机器人框架:比较列表值是否在另一个列表中

时间:2018-04-10 17:04:17

标签: robotframework

我正在生成列表1中看到的随机字符串,我通过UI看到了dB。 List2是来自相应表的查询结果。我想确定列表1的值是否在列表2中存在

$ {Masterlist}值是[(' SVAARtBKECJILJP',无,' ONFSxMKP',无,' xFRFAWNI',' JOxTVMNW' )]

$ {childlist}值是[' xFRFAWNI',' JOxTVMNW',' SVAARtBKECJILJP'' ONFSxMKP']

列表应包含子列表$ {master} $ {randomlist}

测试结果:未在第一个列表中找到以下值:xFRFAWNI,JOxTVMNW,SVAARtBKECJILJP,ONFSxMKP 任何帮助将不胜感激!!提前致谢

1 个答案:

答案 0 :(得分:0)

看起来$ {Masterlist}包含一个元组。

您可以尝试: 列表应包含子列表$ {MasterList [0]} $ {childlist}

在您的示例中,您尝试访问的值包含在列表中的元组中。

override func viewDidLoad() {
    super.viewDidLoad()

    if let view = self.view as! SKView? {
        if let scene = SKScene(fileNamed: "WelcomeScene") {
            scene.scaleMode = .aspectFill
            view.presentScene(scene)
        }

        view.ignoresSiblingOrder = true
        view.showsFPS = true
        view.showsNodeCount = true
    }
}

要正确验证$ {Masterlist}包含$ {childlist},您需要引用元组内的值,而不是列表。

  [ # Start of a list
      ( # Start of a tuple
        'SVAARtBKECJILJP',
         None,
         'ONFSxMKP',
         None,
         'xFRFAWNI',
         'JOxTVMNW'
      )

如果$ {Masterlist}包含多个元组,您可以使用一些python魔法通过Evaluate关键字将它们展平:

Should Be True    Evaluate    ${Masterlist[0]} == ('SVAARtBKECJILJP', None, 'ONFSxMKP', None, 'xFRFAWNI', 'JOxTVMNW')

有关在列表中展平元组的详细信息,请查看this thread that I stole the snippet from

当然,这种逻辑通常在库关键字中更好。