Как взять конкретных пользователей из файла JSON? - PullRequest
1 голос
/ 23 мая 2019

У меня есть файл JSON, откуда я беру данные пользователей и выполняю операции. Как получить конкретных пользователей из файла JSON?

Вот файл JSON:

    "users" : {
            "ABC": {
                "ip": "10.50.10.XXXX:5555",
                "username": "user1@gmail.com",
                "password": "xyz123",
                "displayname": "user 1",
                "Mode": "Personal",
                "phonenumber": "14084xxxx",
                "pstndisplay": "+1 408-xxx-xxx"
            }
            "EFG": {
                "ip": "10.50.10.XXXX:5555",
                "username": "user2@gmail.com",
                "password": "xyz123",
                "displayname": "user 2",
                "Mode": "Personal",
                "phonenumber": "14084xxxx",
                "pstndisplay": "+1 408-xxx-xxx"
            }

             "XYZ": {
                "ip": "10.50.10.XXXX:5555",
                "username": "user3@gmail.com",
                "password": "xyz123",
                "displayname": "user 3",
                "Mode": "Personal",
                "phonenumber": "14084xxxx",
                "pstndisplay": "+1 408-xxx-xxx"
            }

вот как я анализирую данные JSON:

  ${the file as string}=    Get File    ${users_json_path}
      ${parsed}=    Evaluate  json.loads("""${the file as string}""", object_pairs_hook=collections.OrderedDict)     json, collections
      ${properties}=  Set Variable  ${parsed["users"]}
      Log  ${properties}
      :FOR    ${key}    IN    @{properties}
      \  ${sub dict}=    Get From Dictionary    ${properties}    ${key}
      \  Log  ${sub dict}
      \  Signin  ${sub dict}[ip]   ${sub dict}[username]   ${sub dict}[password]  ${sub dict}[Mode]
      \  Log  ${key} is successfully signed in.

вот тестовый пример:

Given Number of users signs in to their respective devices  ${ABC} 
      Then ABC sees that Sign in is successful
      And No action is taken for 30 seconds
      When ABC signs out from the device
      Then ABC sees that sign out was successful

Я ожидаю, что когда я захочу выполнить вход с использованием определенного пользователя, такого как ABC, он выполнит операцию входа только с ABC, но он выполнит вход с использованием всех пользователей, приняв данные у пользователей. Как выполнить войти в систему, принимая конкретного пользователя из JSON?

1 Ответ

0 голосов
/ 27 мая 2019

Добавить в начало цикла:

Continue For Loop If    $key != 'ABC'

Это пропустит "Signin", если пользователь не ABC.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...