Ошибка «Требуемые возможности должны быть словарем» при передаче dict в параметризованный метод - PullRequest
1 голос
/ 04 апреля 2019

Я тестирую мобильные приложения, используя Appium и pytest.Следующая ошибка появляется, когда я пытаюсь пропустить список словарей через параметризованную метку pytest.

 WebDriverException: Message: Desired Capabilities must be a dictionary

Это прекрасно работает, когда я не использую @pytest.mark.parametrize() и передаю нужные возможности непосредственно в качестве словаряwebdriver.Remote.

Я немного упростил свой код для лучшего понимания:

class TestQATestProject(object): 
  def get_all(self):
      return [
          {'platformName': 'Android'},
          {'platformName': 'Android'}
      ]


  @pytest.mark.parametrize('desired_caps', get_all())
  def setup_method(self, desired_caps):
      self.driver = webdriver.Remote('http://localhost:4723/wd/hub', 
  desired_caps)
      self.driver.implicitly_wait(5000)

[UPD] Я понял, что @pytest.mark.parametrizeне работает должным образом для setup_method.Так есть ли другой способ запуска тестов на разных конфигах?

1 Ответ

0 голосов
/ 16 апреля 2019

@pytest.mark.unit заключает сделку за меня

...