Gibt es einen ähnlichen Selen-Wrapper wie Selenide (Java) oder Capybara (Ruby) für Python?

Ich habe so viele Selen-Wrapper für Python gefunden ... Es ist sehr schwer zu wählen ...

Aber ich weiß, was ich will – so etwas wie Selenide oder Capybara. Gibt es Alternativen in der Python-Welt?

Folgende "Features" werden benötigt:

  • Selektoren im jQuery-Stil, z. B.:showPasswordChkbox = $(".show-pasword")
  • sollte Stil behauptet:showPasswordChkbox.shouldBe(checked)
  • Ajax-Unterstützung: Jedes "sollte" wartet immer darauf, dass seine Bedingung eintritt (mit der Möglichkeit, bei Bedarf direkt eine Zeitüberschreitung festzulegen), z.showPasswordChkbox.waitUntil(checked, 5000)
  • unkomplizierte und einfache Möglichkeit, eigene Bedingungen zu implementieren, die in shoulds verwendet werden können
  • Autostart-Browser
  • Klare Fehlermeldungen: Welches Element hat gesucht, von welchem ​​Selektor, warum fehlgeschlagen? tatsächlicher Wert?
  • Screenshots für jedes fehlgeschlagene "sollte" mit Link zum Screenshot in der erzeugten Fehlermeldung
  • [gewünscht] Screenshots für jeden sollten mit der Möglichkeit, den Kontext festzulegen und dann alle "Screenshots pro Kontext" zu erhalten.

Antworten (3)

Elementium hat eine Menge von dem, was Sie suchen:

https://github.com/actmd/elementium

Vielen Dank. Endlich auch selbst gefunden. Das ist genau das, wonach ich gefragt habe :)

Splinter bietet eine High-Level-API zur Automatisierung der Browserinteraktion.

Ich habe begonnen, Selenide nach Python zu portieren: https://github.com/yashaka/selene