This repository has been archived on 2022-05-04. You can view files and clone it, but cannot push or open issues or pull requests.
tso-sw/m-test16.robot
surtur 93804c7389
Some checks failed
continuous-integration/drone/push Build is failing
refactor: due to Gitea updates (8b428454 follow-up)
2020-07-12 17:40:31 +02:00

137 lines
4.2 KiB
Plaintext

*** Settings ***
Library SeleniumLibrary run_on_failure=Nothing
*** Variables ***
${URL} https://git.dotya.ml/
${BROWSER} chrome
${DELAY} 0.2
${BURGER_MENU} //*[@id="navbar-expand-toggle"]
${BURGER_MENU_SIGN_IN} //*[@id="navbar"]/div[2]/a[2]
${USERNAME_FIELD} //*[@id="user_name"]
${PASSWD_FIELD} //*[@id="password"]
${SIGN_IN_BUTTON} //form/div[4]/button[1]
${BURGER_AFTER_LOGIN} //*[@id="navbar-expand-toggle"]
${BURGER_AFTER_LOGIN_EXPLORE} //*[@id="navbar"]/a[5]
${EXPLORE_PAGE_URL} https://git.dotya.ml/explore/repos
${SEARCH_FIELD} //form/div/input
${SEARCH_BUTTON} //form/div/button
${SEARCH_DOTFILES_URL} https://git.dotya.ml/explore/repos?tab=&sort=recentupdate&q=dotfiles
${WANDERER_DOTFILES_ENTRY} //a[@href="/wanderer/dotfiles"]
${STAR_A_REPO} //form[2]/div/button
${SHOW_STARGAZERS} //body/div/div[2]/div[1]/div[1]/div/div[2]/form[2]/div/a
${DOTFILES_URL} https://git.dotya.ml/wanderer/dotfiles
${DOTFILES_STARS_URL} ${DOTFILES_URL}/stars
${STARGAZERS_LIST} //body/div/div[2]*
*** Keywords ***
Screenshot page
Capture Page Screenshot
Sign In page
Location Should Be https://git.dotya.ml/user/login?redirect_to=%2f
Login page title
Title Should Be Sign In - dotya.ml Gitea Service
Input Username
[Arguments] ${USERNAME_FIELD} ${USERNAME}
Input Text ${USERNAME_FIELD} ${USERNAME}
Input Password
[Arguments] ${PASSWD_FIELD} ${PASSWORD}
Input Text ${PASSWD_FIELD} ${PASSWORD}
Login success
Title Should Be dat_test_usr - Dashboard - dotya.ml Gitea Service
Dashboard page address
Location Should Be https://git.dotya.ml/
Explore page
Location Should Be ${EXPLORE_PAGE_URL}
Input Search
[Arguments] ${SEARCH_FIELD} ${SEARCH_TERM}
Input Text ${SEARCH_FIELD} ${SEARCH_TERM}
Search dotfiles page
Location Should Be ${SEARCH_DOTFILES_URL}
Stargazers page
Location Should Be ${DOTFILES_STARS_URL}
Stargazer dotfiles address
Location Should Contain dotfiles/stars
Stargazer usr is missing
Should Not Contain ${STARGAZERS_LIST} dat_test_usr
*** Test Cases ***
star wanderer's dotfiles repo (mobile)
# based on Pixel 2 XL mobile browser declared resolution
${devicemetrics}= Create Dictionary width=${411} height=${823} pixelRatio=${2.0} userAgent=Mozilla/5.0 (Linux; Mobile; Android 10) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Mobile Safari/537.36
${mobileemulation}= Create Dictionary deviceMetrics=${devicemetrics}
${chrome_options} = Evaluate sys.modules['selenium.webdriver'].ChromeOptions() sys, selenium.webdriver
Call Method ${chrome_options} add_argument headless
Call Method ${chrome_options} add_argument no-sandbox
Call Method ${chrome_options} add_argument disable-dev-shm-usage
Call Method ${chrome options} add_experimental_option mobileEmulation ${mobileemulation}
${options}= Call Method ${chrome_options} to_capabilities
Open Browser ${URL} browser=${BROWSER} desired_capabilities=${options}
Set Selenium Speed ${DELAY}
Screenshot page
Log Location
Click Element ${BURGER_MENU}
Sleep ${DELAY}
Screenshot page
Click Element ${BURGER_MENU_SIGN_IN}
Screenshot page
Log Location
Sign In page
Login page title
Input Username ${USERNAME_FIELD} dat_test_usr
Input Password ${PASSWD_FIELD} D@t_p@ssw000rd987.
Screenshot page
Click Element ${SIGN_IN_BUTTON}
Screenshot page
Log Location
Login success
Dashboard page address
Click Element ${BURGER_AFTER_LOGIN}
Screenshot page
Click Element ${BURGER_AFTER_LOGIN_EXPLORE}
Screenshot page
Log Location
Explore page
Input Search ${SEARCH_FIELD} dotfiles
Screenshot page
Log Location
Click Element ${SEARCH_BUTTON}
Screenshot page
Log Location
Search dotfiles page
Click Element ${WANDERER_DOTFILES_ENTRY}
Screenshot page
Log Location
Click Element ${SHOW_STARGAZERS}
Screenshot page
Log Location
Stargazers page
Stargazer dotfiles address
Stargazer usr is missing
Click Element ${STAR_A_REPO}
Screenshot page
Post-conditions
Close Browser