⏱️ Duration: 309.70s
❌ Error:
fixturefunc = <function open_external_share_link at 0x7fbfc8689ea0>
request = <FixtureRequest for <Function test_pub08_verify_external_share_of_regular_scheduled_post>>
kwargs = {'browser': <selenium.webdriver.remote.webdriver.WebDriver (session="73a9c55cc7b7e3f682571d8c14048439")>}
def call_fixture_func(
fixturefunc: "_FixtureFunc[FixtureValue]", request: FixtureRequest, kwargs
) -> FixtureValue:
if is_generator(fixturefunc):
fixturefunc = cast(
Callable[..., Generator[FixtureValue, None, None]], fixturefunc
)
generator = fixturefunc(**kwargs)
try:
fixture_result = next(generator)
except StopIteration:
raise ValueError(f"{request.fixturename} did not yield a value") from None
finalizer = functools.partial(_teardown_yield_fixture, fixturefunc, generator)
request.addfinalizer(finalizer)
else:
fixturefunc = cast(Callable[..., FixtureValue], fixturefunc)
> fixture_result = fixturefunc(**kwargs)
venv/lib/python3.10/site-packages/_pytest/fixtures.py:917:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests/test_planner_page.py:816: in open_external_share_link
bs_fail_with_traceback(browser, open_external_share_link, e)
helpers/common_helpers.py:789: in bs_fail_with_traceback
raise exception
tests/test_planner_page.py:814: in open_external_share_link
open_external_share_not_logged(browser)
pages/planner_page.py:702: in open_external_share_not_logged
sign_out_process(browser)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
browser = <selenium.webdriver.remote.webdriver.WebDriver (session="73a9c55cc7b7e3f682571d8c14048439")>
def sign_out_process(browser):
"""
Signs out from Promo account
"""
do_hover(browser, USERNAME_MENU)
assert is_visible(browser, SIGN_OUT_NE
📸 Failure Screenshot:
⏱️ Duration: 181.54s
❌ Error:
browser = <selenium.webdriver.remote.webdriver.WebDriver (session="0a4bdc15ad6f34629728bd3f900aed9d")>
number = 4, timeout = 30
def count_ai_posts_after_delete(browser, number: int, timeout=30):
"""
After user delete AI post from bulk panel, count the number of AI posts after deletion
variables:
- browser: driver
- number: amount of expected posts
- timeout (optional): function will fail if posts were not found after amount of seconds specified in the timeout
"""
try:
> WebDriverWait(browser, timeout, poll_frequency=0.4).until(
lambda b: len(browser.find_elements(*PLANNER_AI_BADGE)) == number
)
pages/autopilot_page.py:1212:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <selenium.webdriver.support.wait.WebDriverWait (session="0a4bdc15ad6f34629728bd3f900aed9d")>
method = <function count_ai_posts_after_delete.<locals>.<lambda> at 0x7fbfc83d5120>
message = ''
def until(self, method: Callable[[WebDriver], Union[Literal[False], T]], message: str = "") -> T:
"""Calls the method provided with the driver as an argument until the \
return value does not evaluate to ``False``.
:param method: callable(WebDriver)
:param message: optional message for :exc:`TimeoutException`
:returns: the result of the last call to `method`
:raises: :exc:`selenium.common.exceptions.TimeoutException` if timeout occurs
"""
screen = None
stacktrace = None
end_time = time.monotonic() + self._timeout
while True:
try:
value = method(self._driver)
if value:
return value
except self._ignored_exceptions as exc:
screen = getattr(exc, "screen", None)
stacktrace = getattr(exc, "stacktrace", None)
time.sleep(self._poll)
📸 Failure Screenshot: