Como usar JTReg ... - Teste de regressão Java.


O que é o JTReg?

JTReg significa Java Test Regression suite, veja também http://openjdk.java.net/jtreg/.

Como usar o JTReg?

Experimente os comandos make abaixo para executar testes nos componentes individuais:

$ cd $HOME/sources/jdk8_tl/test

$ make jdk_core      &> openJDK_jdk_core_Test_Results.logs
$ make jdk_default   &> openJDK_jdk_default_Test_Results.logs 
$ make jdk_all       &> openJDK_jdk_all_Test_Results.logs

(As variáveis ​​de ambiente necessárias precisam estar configuradas antes do comando make test ser executado e funcionar nos componentes acima, para uma lista maior veja link.

  • Pré-requisitos:
    1) TEST.ROOT deve existir na pasta onde os comandos abaixo serão executados
    2) as imagens jdk devem estar presentes como resultado do comando make images ou make clean images

  • Problema conhecido:
    "Não é possível determinar a versão do java", solução: unset JT_JAVA in .bashrc

Método 1 para executar jtreg a partir do CLI

$ java -jar $HOME/jtreg/lib/jtreg.jar -verbose:fail -jdk: <jdk8-path> $1

Método 2 para executar jtreg a partir do CLI

$ $HOME/jtreg/linux/bin/jtreg -verbose:fail -jdk: <jdk8-path> $1

Jdk8-path - mesmo que $ PRODUCT_HOME (por exemplo, $SOURCE_CODE/jdk8/build/macosx-x64-normal-server-release/images/j2sdk-image, Isto pode diferir em seu sistema)

Substitua o $ 1 por um arquivo ou nome de pasta, abaixo estão alguns exemplos:

$ cd $SOURCE_CODE/jdk8_tl/jdk/test

$ java -jar $HOME/jtreg/lib/jtreg.jar -verbose:all -jdk:$HOME/sources/jdk8_tl/build/linux-x86_64-normal-server-release/images/j2sdk-image/ ./ 

$ java -jar $HOME/jtreg/lib/jtreg.jar -verbose:all  -jdk:$HOME/sources/jdk8_tl/build/linux-x86_64-normal-server-release/images/j2sdk-image/ javax
(the above will run all the tests in the jdk/test/javax sub-folder)

$ $HOME/jtreg/linux/bin/jtreg -verbose:all -jdk:$HOME/sources/jdk8_tl/build/linux-x86_64-normal-server-release/images/j2sdk-image/ java/lang/invoke/AccessControlTest.java

(O acima irá executar todos os testes na classe de teste acima mencionado)

Os resultados podem ser encontrados nas pastas JTreport e JTwork.


/test/ folders in the $HOME/sources/jdk8 or $HOME/sources/jdk9 tree

Execute o comando abaixo para descobrir os repos ou pacotes que têm uma pasta de teste nele, portanto, suporta jtreg testes, o que significa que você pode ir para essas pastas e executar make test ou jtreg ou comandos de arquivo binário para executar os respectivos testes:

$ tree -fL 5 | grep "/test/" | more

Nossa pesquisa retornou o seguinte:

./hotspot/test
./jdk/test
./langtools/test
./nashorn/test
./test/

Por exemplo cd em $SOURCES/dev/jdk9/jdk/test or $SOURCES/dev/jdk9/hotspot/test Em seguida, execute: jtreg -verbose:arg .

Para executar testes individuais, especifique uma subpasta como o argumento para jtreg ou navegue até essa subpasta antes de executar jtreg.

Há muito o que aprender sobre OpenJDK, portanto, olhamos para os testes para entender o código.

results matching ""

    No results matching ""