Тестовые сценарии Nightwatch js не могут найти элемент при запуске, используя аргумент -c для файла конфигурации - PullRequest
0 голосов
/ 08 ноября 2018

Я настраиваю скрипты ночного наблюдения и запускаю их с сервера Jenkins как часть проекта CI.

Я могу запустить скрипт на сервере (centOS), когда вхожу в проект и запускаю команду 'nightwatch', она работает как положено.

Проблема, с которой я сталкиваюсь, заключается в том, что я не могу просто перейти в каталог проекта, когда я запускаю из Jenkins (я имею в виду, что мог, но это не умно). поэтому я запускаю это так:

  /usr/local/bin/nightwatch -c /PATH_TO_PROJECT/nightwatch.json

здесь -c это параметр файла конфигурации, который выглядит следующим образом:

{
    "src_folders": [
        "/PATH_TO_PROJECT/tests"
    ],
    "output_folder": "/PATH_TO_PROJECT/reports",
    "page_objects_path": [
        "/PATH_TO_PROJECT/page-objects"
    ],
    "selenium": {
        "start_process": true,
        "server_path": "/PATH_TO_PROJECT/bin/selenium-server-standalone-3.14.0.jar",
        "log_path": "/PATH_TO_PROJECT/log/",
        "port": 4444,
        "cli_args": {
            "webdriver.gecko.driver": "/PATH_TO_PROJECT/bin/geckodriver"
        }
    },
    "test_settings": {
        "default": {
            "launch_url": "http://localhost",
            "selenium_port": 4444,
            "selenium_host": "localhost",
            "desiredCapabilities": {
                "browserName": "firefox",
                "javascriptEnabled": true,
                "acceptSslCerts": true,
                "alwaysMatch" : {
                    "moz:firefoxOptions": {
                        "args": ["-headless", "no-sandbox", "disable-gpu"]
                    }
                }
            }
        }
    }
}

Когда я запускаю команду :/usr/local/bin/nightwatch -c /home/mbajwa/salesforce-nightwatch_js-master_final_S/nightwatch.json

я получаю эту ошибку: ERROR: Unable to locate element: "//*[@id='AllTab_Tab']" using: xpath это для всех элементов, которые пытается найти мой скрипт.

Кто-нибудь знает, какие другие файлы мне нужно передать в качестве аргумента командной строки? Я предполагал, что файл конфигурации позаботится обо всем этом.

...