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 Appium Python no AWS Device Farm
O tópico a seguir lista mensagens de erro que ocorrem durante o upload de testes do Appium Python e recomenda soluções para resolver cada erro.
APPIUM_PYTHON_TEST_PACKAGE_UNZIP_FAILED
Se você visualizar a mensagem a seguir, siga estas etapas para corrigir o problema.
Atenção
Não conseguimos abrir o 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.
-
Copie o pacote de testes para seu diretório de trabalho e execute o comando a seguir:
$ unzip test_bundle.zip -
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.whlPara obter mais informações, consulte Testes Appium e AWS Device Farm.
APPIUM_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.
-
Copie o pacote de testes para seu diretório de trabalho e execute o comando a seguir:
$ unzip test_bundle.zip -
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 arquivo
.whldependente, como os arquivos destacados, dentro do diretório.wheelhouse. |-- 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.whlPara obter mais informações, consulte Testes Appium e AWS Device Farm.
APPIUM_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.
-
Copie o pacote de testes para seu diretório de trabalho e execute o comando a seguir:
$ unzip test_bundle.zip -
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 arquivo
.whldependente, como os arquivos destacados, dentro do diretório.wheelhouseO nome do arquivo pode ser diferente, mas deve terminar com-any.whlou-linux_x86_64.whl, que especifica a plataforma. Não há suporte para outras plataformas comowindows.. |-- 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.whlPara obter mais informações, consulte Testes Appium e AWS Device Farm.
APPIUM_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.
-
Copie o pacote de testes para seu diretório de trabalho e execute o comando a seguir:
$ unzip test_bundle.zip -
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
testsdiretó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.whlPara obter mais informações, consulte Testes Appium e AWS Device Farm.
APPIUM_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.
-
Copie o pacote de testes para seu diretório de trabalho e execute o comando a seguir:
$ unzip test_bundle.zip -
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
testsdiretório dentro do diretório de trabalho. O nome do arquivo pode ser diferente, mas ele deve começar comtest_ou terminar 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.whlPara obter mais informações, consulte Testes Appium e AWS Device Farm.
APPIUM_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.
-
Copie o pacote de testes para seu diretório de trabalho e execute o comando a seguir:
$ unzip test_bundle.zip -
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.txtarquivo 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.whlPara obter mais informações, consulte Testes Appium e AWS Device Farm.
APPIUM_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.
-
Copie o pacote de testes para seu diretório de trabalho e execute o comando a seguir:
$ unzip test_bundle.zip -
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
requirements.txtarquivo 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 a versão pytest, você pode executar o seguinte comando:
$ grep "pytest" requirements.txtVocê provavelmente chegará a um resultado como o seguinte:
pytest==2.9.0Ele 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 Appium e AWS Device Farm.
APPIUM_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
$ 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.
-
Copie o pacote de testes para seu diretório de trabalho e execute o comando a seguir:
$ unzip test_bundle.zip -
Para testar os arquivos wheel de instalação, execute o seguinte comando:
$ pip install --use-wheel --no-index --find-links=./wheelhouse --requirement=./requirements.txtUm 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 -
Para desativar o ambiente virtual, você pode executar o seguinte comando:
$ deactivatePara obter mais informações, consulte Testes Appium e AWS Device Farm.
APPIUM_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 <path to your tests
directory> e tente novamente se o comando não imprimir nenhum erro.
É altamente recomendável configurar o virtualenv do Python
$ 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.
-
Copie o pacote de testes para seu diretório de trabalho e execute o comando a seguir:
$ unzip test_bundle.zip -
Para instalar os arquivos wheel, execute o seguinte comando:
$ pip install --use-wheel --no-index --find-links=./wheelhouse --requirement=./requirements.txt -
Para coletar os testes, execute o seguinte comando:
$ py.test --collect-only testsUm 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 ==================== -
Para desativar o ambiente virtual, você pode executar o seguinte comando:
$ deactivatePara obter mais informações, consulte Testes Appium e AWS Device Farm.
APPIUM_PYTHON_TEST_PACKAGE_DEPENDENCY_WHEELS_INSUFFICIENT
Se você visualizar a mensagem a seguir, siga estas etapas para corrigir o problema.
Atenção
Não foi possível encontrar dependências de wheel suficientes no diretório wheelhouse. Descompacte seu pacote de teste e, em seguida, abra o diretório wheelhouse. Verifique se você tem todas as dependências de wheel especificadas no arquivo requirements.txt.
Verifique se você consegue descompactar o pacote de testes sem erros. No exemplo a seguir, o nome do pacote é test_bundle.zip.
-
Copie o pacote de testes para seu diretório de trabalho e execute o comando a seguir:
$ unzip test_bundle.zip -
Verifique o tamanho do
requirements.txtarquivo, bem como o número de arquivos.whldependentes no diretório do wheelhouse:$ cat requirements.txt | egrep "." |wc -l 12 $ ls wheelhouse/ | egrep ".+\.whl" | wc -l 11Se o número de arquivos
.whldependentes for menor que o número de linhas não vazias em seurequirements.txtarquivo, você precisará garantir o seguinte:-
Há um arquivo
.whldependente correspondente a cada linha dorequirements.txtarquivo. -
Não há outras linhas no
requirements.txtarquivo que contenham informações além dos nomes dos pacotes de dependências. -
Nenhum nome de dependência é duplicado em várias linhas no
requirements.txtarquivo, de forma que duas linhas no arquivo possam corresponder a um arquivo.whldependente.
O AWS Device Farm não suporta linhas no
requirements.txtarquivo que não correspondam diretamente aos pacotes de dependência, como linhas que especificam opções globais para opip installcomando. Consulte Requirements File Formatpara obter uma lista de opções globais. Para obter mais informações, consulte Testes Appium e AWS Device Farm.
-