Нужны некоторые идеи для улучшения при запуске на экземпляре aws-beanstalk типа Linux при создании экземпляра веб-драйвера в Robotframework - PullRequest
0 голосов
/ 13 марта 2019

Нужна небольшая помощь для улучшения дизайна теста: Текущий дизайн >> Suitefilename.robot

*** Settings****
Suite Setup     Run Keywords  Launch Web Browser    ${URL}    ${Browser}  AND  Connect to ProjectDB  
Suite Teardown  Run Keywords  Close All Browsers     Disconnect From Database

Test Setup        Common wait

***Testcases****
TC1:
    Login into application
    Action1
    [Teardown] Logout of application

TC2:
   Login into application
    Action2
    [Teardown] Logout of application

Pageclass.robot

***Keywords***
Launch Web Browser    ${URL}    ${Browser}  
       [Arguments]    ${URL}    ${Browser}   
        Run Keyword If      '${BROWSER}' == 'HeadlessChrome'      Open Headless Chrome Browser and Launch Url  ${URL}
        ...     ELSE IF     '${BROWSER}' == 'HeadlessFirefox'     Open Headless Firefox and Launch Url    ${URL}
        ...     ELSE         Open Browser    url= ${URL.${Environment}}    browser=${BROWSER}
    Set Selenium Speed    ${DELAY}
    Maximize Browser Window    
    LOG TO CONSOLE    Label verified on LoginPage
    SLEEP    3s

Open Headless Chrome Browser and Launch Url
     [Arguments]    ${url}
     ${chrome_options}=    Evaluate  sys.modules['selenium.webdriver'].ChromeOptions()   sys, selenium.webdriver
     Call Method    ${chrome_options}    add_argument    test-type
     Call Method    ${chrome_options}    add_argument    disable-extensions
     Call Method    ${chrome_options}    add_argument    headless
     Call Method    ${chrome_options}    add_argument    disable-gpu
     Call Method    ${chrome_options}    add_argument    no-sandbox
     Create Webdriver    Chrome    chrome_options=${chrome_options}   executable_path=/opt/chromedriver
     Log to console   HeadlessChrome has chromeoptions>test-type/disableextenstions/headless/disable_gpu/no_to_sanbox
     Set Window Size    1920    1080
     #Log to console   Setting Selenium speed to 3s
     #Set Selenium Speed   3s
     Go To     url= ${URL.${Environment}}

Open Headless Firefox and Launch Url
     [Arguments]    ${url}
     ${firefox_options}=     Evaluate    sys.modules['selenium.webdriver'].firefox.webdriver.Options()   sys, selenium.webdriver
     Call Method    ${firefox_options}   add_argument    -headless
     #Call Method    ${firefox_options}    add_argument    --disable-gpu
     Log to console   HeadlessFirefox has firefoxoptions>headless
     Create Webdriver    Firefox    firefox_options=${firefox_options}
     Set Window Size    1920    1080
     #Log to console   Setting Selenium speed to 3s
     #Set Selenium Speed   3s
     Go To    url= ${URL.${Environment}}                    

Connect to ProjectDB  
     Connect To Database    psycopg2   ${prj_DBName}    ${prj_DBUser}   ${prj_DBPass}   ${prj_DBHost}   ${prjPort}

Disconnect from DB
    Disconnect From Database

Common wait
     sleep 5s

При текущем дизайне наблюдаются следующие замечания:- При запуске на локальном компьютере: -

TC1: -Login, AC1, Результат выхода из системы: Pass

TC2: - Вход в систему, AC2, Результат выхода из системы: Pass

TC3:- Вход, AC3, Результат выхода из системы: Pass

В экземпляре Aws Linux: -

TC1: -Login, AC1, Результат выхода из системы: Pass

TC2: - Ошибка входа в систему Результат: сбой

TC3: - Пропуск / сбой при входе в систему, AC3, Результат выхода из системы: Пропуск / сбой

Тестовый набор для поддержки кросс-браузерной и кросс-платформенной систем.Хотелось подумать о том, как улучшить дизайн, чтобы получить тот же результат и согласованные результаты, что и при работе на локальной машине.

...