Solução de problemas de testes de aplicativos web Appium Python no Device Farm AWS - AWS Device Farm

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Solução de problemas de testes de aplicativos web Appium Python no Device Farm AWS

O tópico a seguir lista mensagens de erro que ocorrem durante o upload de testes de aplicativos web do Appium Python e recomenda soluções para resolver cada erro.

APPIUM_WEB_PYTHON_TEST_PACKAGE_UNZIP_FAILED

Se você visualizar a mensagem a seguir, siga estas etapas para corrigir o problema.

Atenção

Não foi possível abrir seu arquivo de teste ZIP do Appium. Verifique se o arquivo é válido e tente novamente.

Verifique se você consegue descompactar o pacote de testes sem erros. No exemplo a seguir, o nome do pacote é test_bundle.zip.

  1. Copie o pacote de testes para seu diretório de trabalho e execute o comando a seguir:

    $ unzip test_bundle.zip
  2. Assim que conseguir descompactar o pacote, você poderá encontrar a estrutura de árvore do diretório de trabalho executando o seguinte comando:

    $ tree .

    Um pacote válido do Appium Python deve gerar um resultado semelhante ao seguinte:

    . |-- requirements.txt |-- test_bundle.zip |-- tests (directory) | `-- test_unittest.py `-- wheelhouse (directory) |-- Appium_Python_Client-0.20-cp27-none-any.whl |-- py-1.4.31-py2.py3-none-any.whl |-- pytest-2.9.0-py2.py3-none-any.whl |-- selenium-2.52.0-cp27-none-any.whl `-- wheel-0.26.0-py2.py3-none-any.whl

    Para obter mais informações, consulte Testes de appium e AWS Device Farm.

APPIUM_WEB_PYTHON_TEST_PACKAGE_DEPENDENCY_WHEEL_MISSING

Se você visualizar a mensagem a seguir, siga estas etapas para corrigir o problema.

Atenção

Não foi possível localizar um arquivo de dependência wheel na árvore do diretório wheelhouse. Descompacte o pacote de testes e abra o diretório wheelhouse, verifique se pelo menos um arquivo wheel encontra-se no diretório e tente novamente.

Verifique se você consegue descompactar o pacote de testes sem erros. No exemplo a seguir, o nome do pacote é test_bundle.zip.

  1. Copie o pacote de testes para seu diretório de trabalho e execute o comando a seguir:

    $ unzip test_bundle.zip
  2. Assim que conseguir descompactar o pacote, você poderá encontrar a estrutura de árvore do diretório de trabalho executando o seguinte comando:

    $ tree .

    Se o pacote Appium Python for válido, você encontrará pelo menos um .whl arquivo dependente, como os arquivos destacados dentro do wheelhouse diretório.

    . |-- requirements.txt |-- test_bundle.zip |-- tests (directory) | `-- test_unittest.py `-- wheelhouse (directory) |-- Appium_Python_Client-0.20-cp27-none-any.whl |-- py-1.4.31-py2.py3-none-any.whl |-- pytest-2.9.0-py2.py3-none-any.whl |-- selenium-2.52.0-cp27-none-any.whl `-- wheel-0.26.0-py2.py3-none-any.whl

    Para obter mais informações, consulte Testes de appium e AWS Device Farm.

APPIUM_WEB_PYTHON_TEST_PACKAGE_INVALID_PLATFORM

Se você visualizar a mensagem a seguir, siga estas etapas para corrigir o problema.

Atenção

Encontramos pelo menos um arquivo wheel que especificou uma plataforma para a qual não oferecemos compatibilidade. Descompacte seu pacote de testes e abra o diretório wheelhouse, verifique se os nomes dos arquivos wheel terminam com -any.whl ou -linux_x86_64.whl e tente novamente.

Verifique se você consegue descompactar o pacote de testes sem erros. No exemplo a seguir, o nome do pacote é test_bundle.zip.

  1. Copie o pacote de testes para seu diretório de trabalho e execute o comando a seguir:

    $ unzip test_bundle.zip
  2. Assim que conseguir descompactar o pacote, você poderá encontrar a estrutura de árvore do diretório de trabalho executando o seguinte comando:

    $ tree .

    Se o pacote Appium Python for válido, você encontrará pelo menos um .whl arquivo dependente, como os arquivos destacados dentro do wheelhouse diretório. O nome do arquivo pode ser diferente, mas deve terminar com -any.whl ou -linux_x86_64.whl, que especifica a plataforma. Não há suporte para outras plataformas como windows.

    . |-- requirements.txt |-- test_bundle.zip |-- tests (directory) | `-- test_unittest.py `-- wheelhouse (directory) |-- Appium_Python_Client-0.20-cp27-none-any.whl |-- py-1.4.31-py2.py3-none-any.whl |-- pytest-2.9.0-py2.py3-none-any.whl |-- selenium-2.52.0-cp27-none-any.whl `-- wheel-0.26.0-py2.py3-none-any.whl

    Para obter mais informações, consulte Testes de appium e AWS Device Farm.

APPIUM_WEB_PYTHON_TEST_PACKAGE_TEST_DIR_MISSING

Se você visualizar a mensagem a seguir, siga estas etapas para corrigir o problema.

Atenção

Não foi possível encontrar o diretório tests em seu pacote de testes. Descompacte o pacote de testes, verifique se o diretório tests está no pacote e tente novamente.

Verifique se você consegue descompactar o pacote de testes sem erros. No exemplo a seguir, o nome do pacote é test_bundle.zip.

  1. Copie o pacote de testes para seu diretório de trabalho e execute o comando a seguir:

    $ unzip test_bundle.zip
  2. Assim que conseguir descompactar o pacote, você poderá encontrar a estrutura de árvore do diretório de trabalho executando o seguinte comando:

    $ tree .

    Se o pacote Appium Python for válido, você encontrará o tests diretório dentro do diretório de trabalho.

    . |-- requirements.txt |-- test_bundle.zip |-- tests (directory) | `-- test_unittest.py `-- wheelhouse (directory) |-- Appium_Python_Client-0.20-cp27-none-any.whl |-- py-1.4.31-py2.py3-none-any.whl |-- pytest-2.9.0-py2.py3-none-any.whl |-- selenium-2.52.0-cp27-none-any.whl `-- wheel-0.26.0-py2.py3-none-any.whl

    Para obter mais informações, consulte Testes de appium e AWS Device Farm.

APPIUM_WEB_PYTHON_TEST_PACKAGE_INVALID_TEST_FILE_NAME

Se você visualizar a mensagem a seguir, siga estas etapas para corrigir o problema.

Atenção

Não foi possível localizar um arquivo de teste válido na árvore do diretório tests. Descompacte seu pacote de testes e abra o diretório tests, verifique se pelo menos um nome de arquivo começa ou termina com a palavra-chave "test" e tente novamente.

Verifique se você consegue descompactar o pacote de testes sem erros. No exemplo a seguir, o nome do pacote é test_bundle.zip.

  1. Copie o pacote de testes para seu diretório de trabalho e execute o comando a seguir:

    $ unzip test_bundle.zip
  2. Assim que conseguir descompactar o pacote, você poderá encontrar a estrutura de árvore do diretório de trabalho executando o seguinte comando:

    $ tree .

    Se o pacote Appium Python for válido, você encontrará o tests diretório dentro do diretório de trabalho. O nome do arquivo pode ser diferente, mas ele deve começar com test_ ou termine com _test.py.

    . |-- requirements.txt |-- test_bundle.zip |-- tests (directory) | `-- test_unittest.py `-- wheelhouse (directory) |-- Appium_Python_Client-0.20-cp27-none-any.whl |-- py-1.4.31-py2.py3-none-any.whl |-- pytest-2.9.0-py2.py3-none-any.whl |-- selenium-2.52.0-cp27-none-any.whl `-- wheel-0.26.0-py2.py3-none-any.whl

    Para obter mais informações, consulte Testes de appium e AWS Device Farm.

APPIUM_WEB_PYTHON_TEST_PACKAGE_REQUIREMENTS_TXT_FILE_MISSING

Se você visualizar a mensagem a seguir, siga estas etapas para corrigir o problema.

Atenção

Não foi possível encontrar o arquivo requirements.txt em seu pacote de testes. Descompacte o pacote de testes, verifique se o arquivo requirements.txt encontra-se no pacote e tente novamente.

Verifique se você consegue descompactar o pacote de testes sem erros. No exemplo a seguir, o nome do pacote é test_bundle.zip.

  1. Copie o pacote de testes para seu diretório de trabalho e execute o comando a seguir:

    $ unzip test_bundle.zip
  2. Assim que conseguir descompactar o pacote, você poderá encontrar a estrutura de árvore do diretório de trabalho executando o seguinte comando:

    $ tree .

    Se o pacote Appium Python for válido, você encontrará o requirements.txt arquivo dentro do diretório de trabalho.

    . |-- requirements.txt |-- test_bundle.zip |-- tests (directory) | `-- test_unittest.py `-- wheelhouse (directory) |-- Appium_Python_Client-0.20-cp27-none-any.whl |-- py-1.4.31-py2.py3-none-any.whl |-- pytest-2.9.0-py2.py3-none-any.whl |-- selenium-2.52.0-cp27-none-any.whl `-- wheel-0.26.0-py2.py3-none-any.whl

    Para obter mais informações, consulte Testes de appium e AWS Device Farm.

APPIUM_WEB_PYTHON_TEST_PACKAGE_INVALID_PYTEST_VERSION

Se você visualizar a mensagem a seguir, siga estas etapas para corrigir o problema.

Atenção

Percebemos que a versão pytest era anterior à versão mínima compatível 2.8.0. Altere a versão pytest no arquivo requirements.txt e tente novamente.

Verifique se você consegue descompactar o pacote de testes sem erros. No exemplo a seguir, o nome do pacote é test_bundle.zip.

  1. Copie o pacote de testes para seu diretório de trabalho e execute o comando a seguir:

    $ unzip test_bundle.zip
  2. Assim que conseguir descompactar o pacote, você poderá encontrar a estrutura de árvore do diretório de trabalho executando o seguinte comando:

    $ tree .

    Você deve encontrar o requirement.txt arquivo dentro do diretório de trabalho.

    . |-- requirements.txt |-- test_bundle.zip |-- tests (directory) | `--test_unittest.py `-- wheelhouse (directory) |-- Appium_Python_Client-0.20-cp27-none-any.whl |-- py-1.4.31-py2.py3-none-any.whl |-- pytest-2.9.0-py2.py3-none-any.whl |-- selenium-2.52.0-cp27-none-any.whl `-- wheel-0.26.0-py2.py3-none-any.whl
  3. Para obter a versão pytest, você pode executar o seguinte comando:

    $ grep "pytest" requirements.txt

    Você provavelmente chegará a um resultado como o seguinte:

    pytest==2.9.0

    Ele mostra a versão do pytest que, neste exemplo, é 2.9.0. Se o pacote do Appium Python for válido, a versão de pytest deverá ser posterior ou igual a 2.8.0.

    Para obter mais informações, consulte Testes de appium e AWS Device Farm.

APPIUM_WEB_PYTHON_TEST_PACKAGE_INSTALL_DEPENDENCY_WHEELS_FAILED

Se você visualizar a mensagem a seguir, siga estas etapas para corrigir o problema.

Atenção

Não foi possível instalar as wheels de dependência. Descompacte seu pacote de testes e abra o arquivo requirements.txt e o diretório wheelhouse, verifique se as wheels de dependência especificadas no arquivo requirements.txt correspondem exatamente às wheels de dependência no diretório wheelhouse e tente novamente.

É altamente recomendável configurar o virtualenv do Python para testes de empacotamento. Veja aqui um exemplo de fluxo de criação de um ambiente virtual por meio do virtualenv do Python e, em seguida, de sua ativação:

$ virtualenv workspace $ cd workspace $ source bin/activate

Verifique se você consegue descompactar o pacote de testes sem erros. No exemplo a seguir, o nome do pacote é test_bundle.zip.

  1. Copie o pacote de testes para seu diretório de trabalho e execute o comando a seguir:

    $ unzip test_bundle.zip
  2. Para testar os arquivos wheel de instalação, execute o seguinte comando:

    $ pip install --use-wheel --no-index --find-links=./wheelhouse --requirement=./requirements.txt

    Um pacote válido do Appium Python deve gerar um resultado semelhante ao seguinte:

    Ignoring indexes: https://pypi.python.org/simple Collecting Appium-Python-Client==0.20 (from -r ./requirements.txt (line 1)) Collecting py==1.4.31 (from -r ./requirements.txt (line 2)) Collecting pytest==2.9.0 (from -r ./requirements.txt (line 3)) Collecting selenium==2.52.0 (from -r ./requirements.txt (line 4)) Collecting wheel==0.26.0 (from -r ./requirements.txt (line 5)) Installing collected packages: selenium, Appium-Python-Client, py, pytest, wheel Found existing installation: wheel 0.29.0 Uninstalling wheel-0.29.0: Successfully uninstalled wheel-0.29.0 Successfully installed Appium-Python-Client-0.20 py-1.4.31 pytest-2.9.0 selenium-2.52.0 wheel-0.26.0
  3. Para desativar o ambiente virtual, você pode executar o seguinte comando:

    $ deactivate

    Para obter mais informações, consulte Testes de appium e AWS Device Farm.

APPIUM_WEB_PYTHON_TEST_PACKAGE_PYTEST_COLLECT_FAILED

Se você visualizar a mensagem a seguir, siga estas etapas para corrigir o problema.

Atenção

Não foi possível coletar testes no diretório tests. Descompacte o pacote de testes. Para verificar se o pacote de testes é válido, execute o comando <py.test --collect-only> <caminho para seu pacote de testes> e tente novamente se o comando não imprimir nenhum erro.

É altamente recomendável configurar o virtualenv do Python para testes de empacotamento. Veja aqui um exemplo de fluxo de criação de um ambiente virtual por meio do virtualenv do Python e, em seguida, de sua ativação:

$ virtualenv workspace $ cd workspace $ source bin/activate

Verifique se você consegue descompactar o pacote de testes sem erros. No exemplo a seguir, o nome do pacote é test_bundle.zip.

  1. Copie o pacote de testes para seu diretório de trabalho e execute o comando a seguir:

    $ unzip test_bundle.zip
  2. Para instalar os arquivos wheel, execute o seguinte comando:

    $ pip install --use-wheel --no-index --find-links=./wheelhouse --requirement=./requirements.txt
  3. Para coletar os testes, execute o seguinte comando:

    $ py.test --collect-only tests

    Um pacote válido do Appium Python deve gerar um resultado semelhante ao seguinte:

    ==================== test session starts ==================== platform darwin -- Python 2.7.11, pytest-2.9.0, py-1.4.31, pluggy-0.3.1 rootdir: /Users/zhena/Desktop/Ios/tests, inifile: collected 1 items <Module 'test_unittest.py'> <UnitTestCase 'DeviceFarmAppiumWebTests'> <TestCaseFunction 'test_devicefarm'> ==================== no tests ran in 0.11 seconds ====================
  4. Para desativar o ambiente virtual, você pode executar o seguinte comando:

    $ deactivate

    Para obter mais informações, consulte Testes de appium e AWS Device Farm.