Pergunta

Estou executando um caso de teste junit

Eu recebi o seguinte erro,

A fatal error has been detected by the Java Runtime Environment:

Internal Error (classFileParser.cpp:3174), pid=2680, tid=2688

  Error: ShouldNotReachHere()

  JRE version: 6.0_18-b07

  Java VM: Java HotSpot(TM) Client VM (16.0-b13 mixed mode windows-x86 )

Alguém pode sugerir a solução para resolver

Nenhuma solução correta

Outras dicas

Ok, finalmente consegui criar uma solução respondendo às minhas necessidades. Vou tentar resumir:

Eu construí um script JavaScript que use as 3 bibliotecas principais do SharePoint JS: ECMA scripts. Eu achei a mesma coisa que eu queria fazer e adaptei, e adicionei algumas coisas: http://www.sharepointdevelopment.me/2011/05/working-with-files-in-sharepoint-from-ecma-script/

Então, eu criei uma página do snippet de código em uma página .aspx do meu SharePoint:

    .
  1. criou um formulário dentro com uma entrada, para digitar o nome da página, botões de opção, para escolher o wiki onde eu quero criar a página e, em seguida, uma lista suspensa para selecionar o modelo que eu quero usar.
  2. ligou o formulário com a minha função JS.
  3. Adicionado um link gerado no final para acessar diretamente a página apenas criada.

Você precisará aceitar isso com Sun - parece um bug da JVM para mim. Se for reproduzível, você poderá executar o Java de maneira a gerar mais detalhes (por exemplo -verbose, etc.). Se você pode reduzi -lo a um caso mínimo que aciona o bug (o código -fonte sempre ajuda!), Isso também ajuda muito.

http://java.sun.com/developer/technicalarticles/bugreport_howto/index.html

http://bugreport.sun.com/bugreport/crash.jsp

Enquanto isso, você pode querer experimentá -lo com uma implementação de JVM diferente (talvez até um nível mais antigo do Sun Jre).

Vamos para Correr como -> Execute configurações ... e selecione a configuração que você está usando.
Selecione os Caminho da classe guia e selecione Entradas de bootstrap.
Clique em Avançar, então Adicionar biblioteca e selecione Biblioteca do sistema JRE.
Traga -o e faça a primeira entrada na lista de bootstrapentries.

Aplique e corra ...

Outra explicação possível: falha de hardware. Descartado se você pode reproduzir o erro em diferentes máquinas.

Eu resolvi isso por

  • Pare de eclipse
  • Exclua o BIN e gen diretórios em seu projeto
  • Inicie o eclipse
  • Reconstrua seu projeto

Acabei de encontrar a solução recentemente para esta edição que foi publicada por Devdanke:

"A partir de 11 de julho de 2010 e Android 2.1, o trabalho em torno de uso é segregar testes em diferentes classes. Qualquer teste (s) que não chama nenhuma APIs Android entra em suas próprias classes. Para cada uma dessas classes, Removo a referência ao Android em suas configurações de corrida, Guia ClassPath. "

O problema de ter a classe por classe configurada por classe é, então, não é possível executar todos os testes no projeto. A melhor abordagem é criar 2 projetos de teste com diferentes conjuntos de bibliotecas.

O projeto padrão de teste Android Junit pode ser criado seguindo link, e a classe de teste de amostra parece:

import android.test.AndroidTestCase;
public class ConverterTest extends AndroidTestCase {
    public void testConvert() {
        assertEquals("one", "one");
    }   
}

Em seguida, o Projeto de Teste Junit pode ser convertido do projeto de teste Android Junit, removendo a Biblioteca Android do Project Build Path e adicionando JRE System Library, e Junit 3 Library, e a classe de teste de amostra se parece:

import junit.framework.TestCase;
public class ConverterTest extends TestCase{
    public void testConvert() {
        assertEquals("one", "one");
    }   
}

Você pode criar todos os artefatos mencionados tipo de conteúdo, listas, fluxo de trabalho e GUI em aplicativos hospedados do SharePoint.Mas lembre-se que você precisa executar toda a sua codificação usando o modelo de objeto de cliente de descanso e / ou javascript.

Isso pode ser um bug da JVM; Veja a resposta de @Zac. Mas também pode ser que o seu caso de teste JUNIT esteja causando carregamento de um arquivo de bytecode corrompido. Tente reconstruir todos os seus .class Arquivos e, se isso não corrigir o problema, tente reformar quaisquer bibliotecas externas das quais seu código depende.

Você executa em uma plataforma compatível (Windows, uma das poucas versões do Linux?) Caso contrário, essa é a primeira a tentar.

Se você ESTÁ em uma plataforma compatível, faça downgrade para _17 e veja se ISSO ajuda.

Em seguida, faça um relatório de bug para a Sun e espere que eles o consertem algum dia (a menos que você queira dar-lhes dinheiro para consertá-lo mais rapidamente).

Vá para executar como-> Executar configurações-> ClassPath-> Entradas de bootstrap Clique em Advance, adicione a biblioteca e selecione JRE System Library como uma primeira entrada. Aplique e corra ...

Não tenho certeza se você conseguiu alcançar a solução para o seu problema ou não, mas sua pergunta apareceu enquanto eu estava procurando a solução para o mesmo problema que estou enfrentando. E eu recebi uma solução da pilha em si, então pensei em compartilhar um link com você se isso ajudar por qualquer meio. O link está como abaixo:

Não é possível executar o caso de teste Junit 4 no Eclipse Android Project

Outra razão possível (para referências futuras):Eu acidentalmente copiei um método main do meu código, fazendo com que o Eclipse reconhecesse o projeto como uma aplicação java, iniciando-o assim com aquela configuração.

Para resolver entrei em Executar > Configurações de Execução...e depois mudei do meu suposto aplicativo principal em Java para a atividade principal do meu aplicativo Android simplesmente escolhendo-o na coluna da esquerda.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top