JUNIT 28/03/2011. Márcio Delamaro Harry Trinta
|
|
- Margarida Correia Câmara
- 7 Há anos
- Visualizações:
Transcrição
1 1 JUNIT 28/03/2011 Márcio Delamaro Harry Trinta
2 Overview - O que é JUnit? 2 Framework Open Source Apoio à automatização de testes Linguagem de Programação OO Java Apoio à fase do teste de unidade
3 Overview - O que é JUnit? 3... é um framework, open source e de simples manipulação, que tem a funcionalidade de apoiar a escrita e execução de código de teste para programas Java o... o framework utiliza a arquitetura xunit, que introduz mecanismos eficientes para ajudar desenvolvedores a adicionar testes unitários automáticos, estruturados e eficientes em atividades normais de desenvolvimento. Sendo assim, xunit é o padrão para frameworks automáticos de testes unitários...
4 Overview - Para que serve o JUnit? 4 Depuração é uma das maneiras mais simples de se escrever código de teste durante seu desenvolvimento (System.out.println(meuValor);) Limitação: Dependência de julgamento humano para a verificação dos resultados Testes com JUnit não requerem uma interpretação humana dos resultados Escrever código de teste de maneira simples
5 Overview - Para que serve o Junit? 5 Fornece meio para a execução de muitos testes ao mesmo tempo Útil para o apoio ao Teste de Regressão Testes podem ser re-executados automaticamente quantas vezes for necessário Framework mais popular na indústria de software para testes em unidades de programas Java
6 Overview - Teste de Unidade 6 O teste de unidade tem por objetivo testar a menor parte do código garantindo uma maior qualidade do produto no processo de desenvolvimento. Um teste de unidade é um teste de um único componente isolado em uma maneira reutilizável e replicável.
7 Overview - Teste de Unidade 7 JUnit fornece uma API simples, mas eficaz para a execução dos testes de unidade. No caso da linguagem Java, o teste de unidade pode ser feito, por meio do JUnit, em cada método separadamente. Pode-se afirmar que JUnit configura um padrão para o teste de unidade Java
8 Overview - Desenvolvimento e Apoio 8 Foi iniciado em 1997 por Kent Beck (engenheiro de software, criador do XP (extreme Programming) e do TDD (desenvolvimento direcionado à testes, do inglês Test Driven Development)) e Erich Gamma (co-autor do livro Design Patterns: Elements of Reusable Object-Oriented Software ) site oficial do JUnit JUnit FAQ JUnit Guia para iniciantes Fórum de discussões
9 Instalação 9 1. download da versão JUnit 4.x 2. Descompactar o arquivo junit4.x.zip em um diretório qualquer 3. De acordo com sua plataforma, o arquivo junit-4.x.jar deve ser referenciado na variável de ambiente CLASSPATH: - Windows Adicionar o caminho...dirs...\junit4.x\junit-4.x.jar à variável de ambiente CLASSPATH - Unix(linux)- Adcionar o caminho...dirs.../junit4.x/junit-4.x.jar à variável de ambiente CLASSPATH exemplo(debian): editar o arquivo etc/profile com export CLASSPATH="/usr/harry/junit4.7/junit-4.x.jar:."
10 Instalação Verificar Instalação. Isso pode ser feito por meio da execução de uma das amostras de classes de teste fornecidas pelo JUnit. java org.junit.runner.junitcore org.junit.tests.alltests
11 Plugins 11 Atualmente diversas IDEs têm plugins nativos pro framework JUnit ex: Eclipse IDE e Netbeans IDE Apoio à criação de código de teste (casos de teste) Apoio à execução dos testes Apoio à criação de suites de teste para pacotes RECOMENDADO!!!
12 JUnit3.x vs JUnit4.x 12 JUnit3.x vs JUnit4.x 1. Entender as novas características e benefícios proporcionados pelo teste de unidade com JUnit 4.x 2. Fazer um comparativo entre JUnit 4.x e JUnit 3.x 3. Apreciar uma utilidade de se utilizar anotações Java... Java Annotations (Anotações Java) são metadados disponibilizados a partir do Java 5. Servem para simplificar o desenvolvimento de software, possibilitando que em tempo de compilação, carregamento ou execução de classes, as suas metainformações sejam acessadas, bem como de seus métodos e campos...
13 Classe a ser Testada 13 package usp.icmclabes.application; public class Programa{ private int [] vector ; public int oddorpos (int[] x) { int count = 0; for(int i=0; i<x.length; i++) { if(x[i]%2 == 1 x[i] > 0) { } } } return count; count++; public void setvector (int [] values ) { } vector = values; public int [] getvector () { } } return vector; Receber um vetor de inteiros e retornar o número de elementos inteiros positivos ou ímpares. Se um parâmetro nulo é recebido, é lançada a exceção NullPointerException
14 Criando Casos de Teste 14 Fase 1. Criar uma classe de Teste Fase 2. Escrever um método de teste com uma assertiva que indique o resultado esperado da AUT(Application Under Test). Por meio de métodos assert* importando-os estaticamente de org.junit.assert.* Fase 3. Executar os testes
15 Fase 1 - Classe de Teste 15 import junit.framework.testcase; public class LibraryTest extends TestCase { } Com JUnit 3.x, era necessário criar a classe de teste herdando ( extendendo ) os métodos da classe junit.framework.testcase Com JUnit 4.x isso é desnecessário (ver próximo slide)
16 Fase 1 - Classe de Teste 16 import junit.framework.testcase; import org.junit.*; import static org.junit.assert.*; public class LibraryTest{ } Classes de teste com JUnit 4.x são classes comuns e não precisam herdar métodos da classe junit.framework.testcase
17 Fase 2 - JUnit 4.x 17 import org.junit.test; import static org.junit.assert.assertequals; import junit.framework.junit4testadapter; public class LibraryTest { // no public void bookinlibrary () { // test method Librarylibrary = new Library () ; boolean result = library.checkbytitle ("King Lear"); assertequals (true, result); } }
18 JUnit 3.x - Caso de Teste 18 import junit.framework.testcase; public class LibraryTest extends TestCase{ public void testbookinlibrary () { Librarylibrary = new Library () ; boolean result = library.checkbytitle ("King Lear"); assertequals (true, result); } }
19 JUnit 3.x - Caso de Teste 19 Classes de teste tinham que ser filhas (extender, herdam) da classe junit.framework.testcase Todos os métodos de teste deveriam ser nomeados com o prefixo test Por fim, condições de validade no código a ser testado eram validadas por meio de algum dos muitos métodos assert
20 JUnit 4.x - Caso de Teste 20 Não há necessidade de criar classes filhas da classe TestCase. Sendo assim, classes de teste são classes de declaração normal. Não há necessidade de escrever métodos de teste nomeados com o prefixo test Uso de annotations java
21 Annotations Java @Test
22 Annotation 22 Anotação Parâmetros nenhum O método será executado depois de cada método de teste (similar o método tear- Down() do JUnit 3.x). Múltiplos métodos podem ser rotulados com a no entanto a ordem não é public void teardown() { emptylist = null ; collection.clear(); }
23 Annotation 23 Anotação Parâmetros nenhum O método será executado depois que todos os métodos de teste (e também métodos teardown) forem executados dentro da classe. Múltiplos métodos podem ser rotulados com a no entanto a ordem não é public void runonceafter ( ) { library.disconnectfromcentrallibr ( ) ; }
24 Annotation 24 Anotação Parâmetros nenhum O método será executado antes que cada método de teste (é similar ao método setup() do JUnit 3.x). Múltiplos métodos podem ser rotulados com a no entanto a ordem não é public void setup () { // Ajuste para o teste, manipulação de variáveis de instância emptylist = new java.util.arraylist(); }
25 Annotation 25 Anotação Parâmetros nenhum O método será executado antes que quaisquer outros métodos sejam executados dentro da classe. Múltiplos métodos podem ser rotulados com a no entanto a ordem não é public void runonceprior () { library = Library.newInstance(10020); library.connecttocentrallibr(); library.synchrdatawithcentrallibr(); }
26 Annotation 26 Anotação Parâmetros [String] Geralmente é usado temporariamente para excluir um método de teste de uma execução. Aceita um parâmetro opcional do tipo String correspondente à razão do caso de teste ter sido // teste é ignorado durante execução public void testgetsetx ( ) { int x = 1987; assertequals (1987, x); }
27 Annotation 27 Anotação Parâme tros nenhum Indica um método que irá retornar uma Coleção de objetos que correspondem aos parâmetros de um possível construtor em seu teste. Sendo assim, esses parâmetros podem ser utilizados na condução de seus public static Collectiondata () { Object [][] data = new Object[][] {{1},{2},{3},{4}}; return Arrays.asList(data); }
28 Annotation 28 Anotação Parâme tros Class Usado para indicar ao JUnit que a classe (passada como parâmetro) deve ser usada como runner do teste. A classe parâmetro deve implementar a interface public class CalculatorTest{ // ajustes // assertivas de teste // TestClassRunner.class implementa a interface Runner }
29 Annotation 29 Anotação Parâm etros Class[] Usada para indicar ao JUnit uma coleção de classes de teste para serem executadas. Usado juntamente com ( TestClass1.class,... ) // (( TestClass1.class,... }) // Quando essa classe for executada, serão executados // todos os testes em todas as classes de conjunto. public void testmethod { asserttrue (true); }
30 Annotation 30 Anotação Parâmetros [Class] e [Timeout] Usado para indicar um método de teste. Mesma funcionalidade dos métodos de prefixo test do JUnit 3.x. A classe como parâmetro pode ser usada para indicar uma exceção que deve ser lançada pelo teste. O parâmetro timeout especifica, em milissegundos, qual é o tempo máximo tolerado para a execução de determinado caso de teste. Se determinado caso de teste estourar seu timeout ele será considerado public void testgetsetx () { int x = 1987; assertequals (1987, x ) ; }
31 Assertivas - JUnit 31 Assertiva assertnull(object x) assertnotnull(object x) asserttrue(boolean x) assertfalse(boolean x) assertequals(object x,object y) assertsame(object x, Object y) assertnotsame(object x, Object y) fail() Função Valida o teste quando o parâmetro for null Valida o teste se o parâmetro não for null Valida o teste se o parâmetro é true Valida o teste se o parâmetro é false Valida o teste por meio do método.equals(object obj1, Object obj2) Valida o teste por meio do operador Java == Valida o teste para objetos por meio da negação do operador Java == Invalida o teste
32 Fase 2 utilização main() 32 Escrever um método main() O advento dos IDEs runners tornou essa etapa menos importante, ou melhor, desnecessária. Alguns testadores acham que é uma prática auxiliar do teste. public static void main ( Stringargs [] ) { } org.junit.runner.junitcore.main ("package1.package2.simpletest");
33 Fase 3. Execução 33 Para rodar os testes, com um runner, a partir de uma classe com o método main(): java package1.package2.simpletest Para rodar o teste, por linha de comando, a partir do console (não é necessário que a classe SimpleTest tenha um método main()): Java org.junit.runner.junitcorepackage1.package2.simpletest
34 E quando exceções são esperadas? (expected=indexoutofboundsexception.class) public void testindexoutofboundsexception () { ArrayListemptyList = new ArrayList() ; Object o = emptylist.get(0) ; } Não é necessário o uso de assertivas
35 Falha por timeout (timeout=100) public void infinity(){ } while (true); Testes são falhos quando demoram mais do que o timeout O tempo é contado em milisegundos Não precisamos de assertivas
36 Classe a ser Testada 36 package usp.icmclabes.application; public class Programa{ private int [] vector ; public int oddorpos (int[] x) { int count = 0; for(int i=0; i<x.length; i++) { if(x[i]%2 == 1 x[i] > 0) { } } } return count; count++; public void setvector (int [] values ) { } vector = values; public int [] getvector () { } } return vector; Receber um vetor de inteiros e retornar o número de elementos inteiros positivos ou ímpares. Se um parâmetro nulo é recebido, é lançada a exceção NullPointerException
37 Prática - Classe de Teste 37 package usp.icmclabes.tests; import org.junit.*; import usp.icmclabes.application.programa; import static org.junit.assert.*; public class SimpleTest{ } Programa programa = new Programa(); int expected; Foi criada a classe que será responsável pelo teste da classe Programa
38 Prática - Caso de Teste 1 public void test_empty () { expected = 0; int [] input = {}; \\ usa.equals(o1,o2) assertequals(expected, programa.oddorpos(input)) ; }
39 Prática - Caso de Teste 2 public void test_sucess() { int[] input = {1,2,3}; expected = 3; } programa.setvector(input); \\ usa o operador == assertsame(expected, programa.oddorpos(programa.getvector()));
40 Prática - Caso de Teste 3 (expected=nullpointerexception.class) public void test_nullvector(){ int[] input = null; \\ sem assertiva programa.oddorpos(input); }
41 Exercício 41 Programa Cal
Análise e Projeto Orientados a Objetos
Análise e Projeto Orientados a Objetos Testes de unidade Diretoria Acadêmica de Gestão e Tecnologia da Informação Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Introdução Por que testar?
Leia maisProgramação Orientada a Objetos
Ciência da Computação Prof. Elias Ferreira Elaborador por: Ana Claudia Bastos Loureiro Monção JUNIT Teste de Software Processo de Software Um processo de software pode ser visto como o conjunto de atividades,
Leia maisTestes Unitários em Java
Laboratório de Programação Março 2016 Testes Unitários uma unidade pode ser uma função, uma classe um package ou um sub-sistema. cada teste unitário tem como objectivo verificar uma propriedade comportamental
Leia maisJUnit: framework de testes unitários. Fred Lopes
JUnit: framework de testes unitários Fred Lopes Agenda Parte 1 - teoria Testes unitários JUnit Introdução Arquitetura API resumida Boas práticas Exemplos de uso Parte 2 prática (Eclipse) Criando testes
Leia maisTeste Automatizado POO. Prof. Marcio Delamaro
Teste Automatizado POO Prof. Marcio Delamaro 1/51 Teste Ato de executar um programa e verificar se os resultados produzidos estão corretos Manual: realizado passando-se os parâmetros e olhando se o resultado
Leia maisJUnit. Alexandre Menezes Silva Eduardo Manuel de Freitas Jorge
JUnit Alexandre Menezes Silva alexandre_crvg@hotmail.com Eduardo Manuel de Freitas Jorge emjorge1974@gmail.com 0 Sumário O que é?... 2 Pra que serve?... 2 Arquitetura... 2 Método de comparação assertequals...
Leia maisTestes Unitários com JUnit
Testes Unitários com JUnit Por: Luiz Gustavo Stábile de Souza http://luizgustavoss.wordpress.com Abril/2009 Motivação Apesar de já fazer um certo tempo que escrevi a primeira versão deste tutorial, o assunto
Leia maisTestes com JUnit. Treinamento ALESP SPL. Danilo Toshiaki Sato.
Testes com JUnit Danilo Toshiaki Sato dtsato@ime.usp.br Treinamento ALESP SPL Agenda 1. Introdução 2. Por que usar JUnit? 3. Quando escrever um teste? 4. Como escrever um teste? 5. Como rodar um teste?
Leia maisO JUnit permite a realização de testes de unidades, conhecidos como "caixa branca", facilitando assim a correção de métodos e objetos.
JUnit O JUnit é um framework open-source, criado por Erich Gamma e Kent Beck, com suporte à criação de testes automatizados na linguagem de programação Java. Esse framework facilita a criação de código
Leia maisTela Principal do ArgoUML. ArgoUML: Diagrama de Casos de Uso. Elementos do diagrama. Criar um novo diagrama. Elementos do diagrama
DCC / ICEx / UFMG Tela Principal do ArgoUML ArgoUML: Diagrama de Casos de Uso Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Criar um novo diagrama Novo Diagrama de Casos de Uso Ator Caso de Uso
Leia maisEngenharia de Software Aula 21. Revisão da Prova 2. Eduardo Figueiredo.
Engenharia de Software Aula 21 Revisão da Prova 2 Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo dcc603@dcc.ufmg.br 16 Maio 2018 Aula 16: POO Um programa OO é geralmente constituído de várias classes
Leia maisTestes com objetos mock. Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Análise e Projeto Orientados a Objetos
Testes com objetos mock Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Análise e Projeto Orientados a Objetos Introdução Testes são essenciais para garantir a qualidade do código. No entanto:
Leia maisClasses e Objetos. Sintaxe de classe em Java
Classes e Objetos Classes e Objetos A Programação Orientada a Objetos (POO) é uma técnica de programação que se baseia na construção de classes e utilização de objetos. Os objetos são formados por dados
Leia maisTeste de Caixa Branca: O analista tem acesso ao código fonte, conhece a estrutura interna do produto sendo analisado e possibilita que sejam escolhidas partes específicas de um componente para serem avaliadas.
Leia maisTeste Unitários com NUnit. Anderson Martiniano da Rocha
Teste Unitários com NUnit Anderson Martiniano da Rocha martiniano@dcc.ufba.br Sumário Conceito de teste unitário Vantagens da utilização de testes unitários NUnit (Características, Atributos, Ferramentas)
Leia maisLinguagem de Programação II Implementação
Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Implementação em Java Variáveis Palavras reservadas Pacotes Identificador this Acessando membros de outros objetos API Java Nossa
Leia maisComputação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Tipos Parametrizados ou Genéricos Os tipos parametrizados ou genéricos são a solução para esse problema
Leia maisLista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; }
Lista 05 Herança 1. Analisando a classe Java abaixo podemos observar que a mesma possui apenas um atributo, um construtor e dois métodos. Perceba que dentro do método main estão sendo invocados métodos
Leia maisProgramação Orientada a Objectos - P. Prata, P. Fazendeiro
9 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract
Leia maisPalavras Reservadas da Linguagem Java
Palavras Reservadas da Linguagem Java Palavras Reservadas da Linguagem Java: Categorias Tipos de dados primitivos Literais Pseudo-variáveis Desvio e controle de fluxo Pacotes Exceções Modificadores de
Leia maisUniversidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos II Prof. Fabiano Dorça. Padrão Observer (Observador)
Universidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos II Prof. Fabiano Dorça Problema: Definir uma dependência um-para-muitos entre objetos, de forma quando o estado
Leia maisAnálise e Projeto Orientados a Objetos
Análise e Projeto Orientados a Objetos Testes de unidade Diretoria Acadêmica de Gestão e Tecnologia da Informação Introdução Por que testar? Para verificar o correto funcionamento do código. Para garantir
Leia maisDesenvolvendo aplicações Java
José Roberto Madureira Junior Adaní Cusin Sacilotti Adriana Rodrigues Reginaldo Sacilotti Desenvolvendo aplicações Java Primeira Edição São Paulo 2017 Sumário 1 INTRODUÇÃO AO JAVA... 1 1.1 A PLATAFORMA
Leia maisClasses e Objetos. Prof. Fernando V. Paulovich 9 de agosto de 2010
Classes e Objetos SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação (ICMC) Universidade
Leia maisProgramação orientada a objetos em Java
Programação orientada a objetos em Java Marco A L Barbosa malbarbo.pro.br Departamento de Informática Universidade Estadual de Maringá cba Este trabalho está licenciado com uma Licença Creative Commons
Leia maisTutorial JUnit. Equipe: Pyxis Solutions IFSP - A6PGP. São Paulo 21 de Agosto de 2017.
Tutorial JUnit Equipe: Pyxis Solutions IFSP - A6PGP São Paulo 21 de Agosto de 2017. Objetivo 4 O que é o JUnit? 4 Observações 4 Anotações 5 Estrutura do JUnit 7 Utilizando o JUnit durante os testes 9 JaCoCo
Leia mais9 Classes Abstractas e Interfaces
9 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract
Leia maisProf. Rogério Albuquerque de Almeida. Programação Orientada a Objetos II JAVA Décima Segunda Aula
Prof. Rogério Albuquerque de Almeida Programação Orientada a Objetos II JAVA Décima Segunda Aula 1 Prof. Rogério Albuquerque de Almeida Programação Orientada a Objeto II Vetores Tratamento de Exceções
Leia maisProgramação I Curso: Sistemas de Informação. Prof.: José Ronaldo Leles Júnior .:
Programação I Curso: Sistemas de Informação Prof.: José Ronaldo Leles Júnior Email.: juniorleles80@gmail.com 1º semestre - 2017 POO Paradigma Orientado a Objetos O que é um Paradigma? É um ponto de vista
Leia maisAlgoritmos I Aula 13 Linguagem de Programação Java
Algoritmos I Aula 13 Linguagem de Programação Java Professor: Max Pereira http://paginas.unisul.br/max.pereira Ciência da Computação IDE Eclipse IDE (Integrated development environment) Criar um projeto
Leia maisTestes Automatizados. Paulo Cheque. 27/01/2009 Verão 2009
Testes Automatizados Paulo Cheque 27/01/2009 Verão 2009 Erros de Software Causam prejuízos de aproximadamente $59.5 bi na economia dos Estados Unidos Fonte: NIST/2002 http://www.nist.gov 2 Estratégias
Leia maisModulo II JUNIT. Bibliografia. Prof. Ismael H F Santos. JUnit in Action. April 05 Prof. Ismael H. F. Santos -
Modulo II JUNIT Prof. Ismael H F Santos April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 1 Bibliografia JUnit in Action April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 2 1
Leia maisPadrões de Testes Automatizados
Padrões de Testes Automatizados Paulo Cheque 10/02/2009 Verão2009 2 Introdução Testes codificados Exigem boa programação Mesmos problemas de um software Devem receber o mesmo tratamento Exigem manutenção
Leia maisUniversidade de Mogi das Cruzes Implementação Orientada a Objetos - Profª. Danielle Martin. Guia da Sintaxe do Java
Guia da Sintaxe do Java TIPOS PRIMITIVOS DE DADOS DO JAVA São os tipos nativos de dados do Java, que podem ser usados na declaração de atributos, variáveis, parâmetros. Tipo primitivo Tamanho Valor padrão
Leia maisAnálise de Programação
Análise de Programação Fundamentos da Linguagem de Programação Java Prof. Gilberto B. Oliveira Variáveis Atributos: Variáveis Declaradas fora de um método, sem o modificador static Variáveis membro ou
Leia maisIntrodução ao Teste Unitário com JUnit
Introdução ao Teste Unitário com JUnit Agenda Testes de Unidade Junit Primeiro Teste Executando testes com Junit e NetBeans Passos para criação de testes unitários Testes de Unidade Testes de unidade são
Leia maisNotas de Aula 09: Tratamento de exceções
Notas de Aula 09: Tratamento de exceções Objetivos da aula: Compreender o conceito de exceção Aprender a tratar exceções nos programas Entender a hierarquia das exceções Criar e lançar uma exceção proprietária
Leia maisProgramação Orientada a Objectos - P. Prata, P. Fazendeiro
3 Classes e instanciação de objectos (em Java) Suponhamos que queremos criar uma classe que especifique a estrutura e o comportamento de objectos do tipo Contador. As instâncias da classe Contador devem
Leia maisEx: carro_desportivo poderá ser uma subclasse de automóvel (carro_desportivo é_um automóvel)
Herança capacidade de uma classe (subclasse) herdar, adquirir atributos e funcionalidades de outra classe (superclasse), podendo juntar algumas especificidades e/ou alterar outras. Existe uma relação tipo
Leia maisCONCEITOS BÁSICOS DE ORIENTAÇÃO A OBJETOS PROF. ME. HÉLIO ESPERIDIÃO
CONCEITOS BÁSICOS DE ORIENTAÇÃO A OBJETOS PROF. ME. HÉLIO ESPERIDIÃO CLASSES E OBJETOS PARA PROGRAMAÇÃO ORIENTADA A OBJETOS Classes são estruturas das linguagens de POO criadas para conter os dados que
Leia maisProf. Me. Marcos Echevarria
Prof. Me. Marcos Echevarria JUnit é um framework, open-source, que auxilia a criação e execução de testes unitários em classes Java. Engenharia de Software 2 JUnit facilita a criação de testes automatizados,
Leia maisO problema da herança múltipla e o uso de Interfaces. Herança múltipla. Interfaces. Definindo Interfaces 30/11/2016
O problema da herança múltipla e o uso de Interfaces Herança múltipla O Java não permite o uso de herança múltipla. Cada classe só pode herdar de uma única classe diretamente. X X Interfaces Uma interface
Leia maisParadigmas da Programação PPROG. Tipos Enumerados. Nelson Freire (ISEP DEI-PPROG 2013/14) 1/20
PPROG Paradigmas da Programação Tipos Nelson Freire (ISEP DEI-PPROG 2013/14) 1/20 Sumário Interesse Definição Implementação Declaração Valor de um Tipo Enumerado Variável de Tipo Enumerado Métodos Automáticos
Leia maisSUnit Referências. SUnit. Jefferson Serafim Ascaneo, Suzana de Siqueira Santos
Jefferson Serafim Ascaneo Suzana de Siqueira Santos Departamento de Ciência da Computação Instituto de Matemática e Estatística Universidade de São Paulo Abril de 2013 Agenda 1 2 3 2/ 30 Agenda História
Leia maisIDES E PROGRAMAÇÃO. Prof. Dr. Cláudio Fabiano Motta Toledo PAE: Maurício A Dias
1 IDES E PROGRAMAÇÃO Prof. Dr. Cláudio Fabiano Motta Toledo PAE: Maurício A Dias {claudio,macdias}@icmc.usp.br 2 Agenda Conceitos Instalação e Configuração Compilação e Execução de Código IDEs Exemplo
Leia maisProgramação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos
Programação Orientada a Objetos Vagner Luz do Carmo - Vluzrmos Questão 1 Dada a seguinte classe na linguagem JAVA: public class Carro { public String retornacor(){ ; return Azul ; private String retornachassi(){
Leia maisRecapitulando. Construtores: (Overload assinatura) public Circle() {...} public Circle(double x, double y, double r) {... }
Recapitulando Orientação a objetos: programas organizados em torno da definição de classes, instanciação de objetos e troca de mensagens. Declaração de variáveis de referencia: Circle c; Criação/instanciação
Leia maisTipos, Literais, Operadores
Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não
Leia maisTipos, Literais, Operadores
Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não
Leia maisComputação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2016.2 http://www.dcc.ufrj.br/~fabiom/java Subtipagem e Coringas Lista é subtipo de Lista para qualquer T Não podemos chamar métodos em Lista
Leia maisLinguagem de Programação II Implementação
Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Criando objeto Definindo valores para os atributos do objeto Método construtor Definindo valores padrão para os atributos dos
Leia maisO AMBIENTE DE DESENVOLVIMENTO
Módulo 9 O AMBIENTE DE DESENVOLVIMENTO P S I 1 1 - C P T G P S I SUMÁRIO Instalação do Java JDK - Kit de Desenvolvimento Java Download do JDK Instalação do JDK Configuração da Variável de ambiente (Path)
Leia maisProgramação Estruturada e Orientada a Objetos
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Programação Estruturada e Orientada a Objetos Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@ifrn.edu.br
Leia maisExceções AULA 13. Ricardo Massa F. Lima Sérgio C. B. Soares
Introdução a Programação IF669 http://www.cin.ufpe.br/~if669 Exceções AULA 13 Ricardo Massa F. Lima rmfl@cin.ufpe.br Sérgio C. B. Soares scbs@cin.ufpe.br Exceções Objetivo Depois desta aula você será capaz
Leia maisDesenvolva de qualquer sistema operacional para qualquer sistema operacional. Sem limites.
Desenvolva de qualquer sistema operacional para qualquer sistema operacional. Sem limites. Gabriel Pereira, Especialista em Java da Clarify Projete e desenvolva situações de Mercado com a criação de um
Leia maisUNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 5 Pilhas
UNIP - Ciência da Computação e Sistemas de Informação Estrutura de Dados AULA Pilhas Estrutura de Dados A Estrutura de Dados Pilha Pilha é uma estrutura de dados usada em programação, que tem uma regra
Leia maisModulo II Técnicas para desenvolvimento de Software Ágil - JUNIT
Modulo II Técnicas para desenvolvimento de Software Ágil - JUNIT Prof. Ismael H F Santos April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 1 Bibliografia Vinicius Manhaes Teles, Extreme Programming,
Leia maisComputação II - Java - Prova 1 Prof. Adriano Joaquim de Oliveira Cruz /05/13. Questão: Total Pontos: Gráu:
Computação II - Java - Prova 1 Prof. Adriano Joaquim de Oliveira Cruz - 2015/05/13 Questão: 1 2 3 4 5 6 Total Pontos: 20 15 15 10 10 30 100 Gráu: 1. Defina os termos listados a seguir: (a) (10 Pontos)
Leia maisTécnico em Informática. Web JavaScript. Profª Ana Paula Mandelli
Técnico em Informática Web JavaScript Profª Ana Paula Mandelli anapaula_mandelli@hotmail.com Para o JavaScript - NetBeans O NetBeans é um ambiente de desenvolvimento integrado (IDE) Java desenvolvido pela
Leia maisIteradores. Iteradores. Isabel Harb Manssour. Roteiro. Coleções
Implementação de Genéricos, Iteradores Isabel Harb Manssour Porto Alegre, maio de 2006 Roteiro Implementação de Genéricos Coleções Conceito de Genérico Implementação Iteradores Conceito Utilização ForEach
Leia maisJUnit. Facilitando o desenvolvimento e execução de testes unitários em código java. Peterson Rodrigues
JUnit Facilitando o desenvolvimento e execução de testes unitários em código java. Peterson Rodrigues Roteiro Teste Unitário: O que? Por quê? Quando? Quem? O que testar? Teste Funcional: O que é? JUnit:
Leia mais[Desenvolvimento OO com Java] Organizando suas classes
Centro Tecnológico Departamento de Informática Prof. Vítor E. Silva Souza http://www.inf.ufes.br/~vitorsouza [Desenvolvimento OO com Java] Organizando suas classes Este obra está licenciada com uma licença
Leia maisParadigmas de Programação. Java First-Tier: Aplicações. Orientação a Objetos em Java (I) Nomenclatura. Paradigma OO. Nomenclatura
Java First-Tier: Aplicações Orientação a Objetos em Java (I) Paradigmas de Programação Programação Funcional Programação Procedural Programação Orientada por Objetos Grupo de Linguagens de Programação
Leia maisEncapsulamento e Métodos (Construtores e Estáticos) João Paulo Q. dos Santos
Encapsulamento e Métodos (Construtores e Estáticos) Sobrecarga de Métodos João Paulo Q. dos Santos joao.queiroz@ifrn.edu.br Roteiro Conceitos sobre Encapsulamento; Variável this; Métodos Construtores;
Leia maisGRUPO: Rafael Igor Vanderlei Vieira
GRUPO: Rafael Igor Vanderlei Vieira C# INTRODUÇÃO Paradigmas: Orientado a objeto; Estruturado; Imperativo; Surgimento: 2002. Criador: Anders Hejlsberg. Principais Compiladores:.NET Framework (Windows),
Leia maisComputação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Breakout Componentes do Breakout Bola Raquete Tijolos Paredes Score Nem todos vão precisar de classes próprias
Leia maisCollections Framework
Collections Framework 1 Arrays p Manipular array é bastante trabalhoso. p Dificuldades aparecem em diversos momentos: n não podemos redimensionar um array em Java; n é impossível buscar diretamente por
Leia maisEngenharia de Software
UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre 1 o Teste, 4 de Abril de 2017 Duração: 60 minutos Nome: Número: Este teste tem um conjunto de 8
Leia maisProgramação Orientada a Objetos
Programação Orientada a Objetos Pacotes e Encapsulamento Msc. Paulo de Tarso F. Júnior 1 Introdução Permite o agrupamento de classes em uma coleção chamada pacote Um pacote é uma coleção de classes e interfaces
Leia maisPRIMEIROS PASSOS COM PYTHON. Prof. Msc. Luis Filipe Alves Pereira 2015
PRIMEIROS PASSOS COM PYTHON Prof. Msc. Luis Filipe Alves Pereira 2015 PRIMEIROS PASSOS COM PYTHON 02/47 O QUE É PYTHON? Python é uma linguagem de propósito geral, de alto nível e interpretada Python será
Leia maisDetalhamento de um Framework Horizontal: JUNIT
Detalhamento de um Framework Horizontal: JUNIT Material baseado no artigo A Cook's Tour Ver também o artigo Test Infected: Programmers Love Writing Tests Um excelente exemplo da aplicação de vários Design
Leia maisLinguagem Algorítmica OO. Linguagem Algorítmica
UFSC-CTC-INE INE5384 - Estruturas de Dados Linguagem Algorítmica OO Prof. Ronaldo S. Mello 2002/2 Linguagem Algorítmica Independente de linguagem de programação OO Utilizada para: Exemplificar os algoritmos
Leia maisHerança. Prof. Fernando V. Paulovich 23 de agosto de 2010
Herança SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação(ICMC) Universidade
Leia mais1 - O que será impresso quando o seguinte programa escrito na linguagem JAVA for compilado e executado?
1 - O que será impresso quando o seguinte programa escrito na int i; do i++; while(i < 0); System.out.println(i); a) O programa não compila pois a variável i não foi inicializada. b) O programa compila,
Leia maisOrientação a Objetos e Java
Orientação a Objetos e Java Daves Martins davesmartins@yahoo.com.br Mestre em Computação de Alto Desempenho pela UFRJ Especialista em Banco de Dados Analista Web Orientação a Objetos e Java Características
Leia maisRESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em:
RESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em: http://www.oxnar.com.br/aulas/java ATIVIDADE ELABORAR O PROGRAMA DE CÁLCULOS DE ÁREAS USANDO
Leia maisIntrodução. Universidade Federal de Uberlândia. Programação Orientada a Objetos. Prof. Fabiano Dorça
Introdução Universidade Federal de Uberlândia Programação Orientada a Objetos Prof. Fabiano Dorça Introdução Definições iniciais: classe, objeto, métodos, atributos. Introdução Ao escrever um programa
Leia maisAula 1 POO 1 Prática. Profa. Elaine Faria UFU
Aula 1 POO 1 Prática Profa. Elaine Faria UFU - 2019 Introdução Java Linguagem de programação poderosa Utiliza o paradigma Orientado a Objetos Muito utilizada em aplicativos para Internet e para redes Difundida
Leia maisCA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA A F B G C H D I
ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008 2º PERÍODO - 4º MÓDULO AVALIAÇÃO MP1 DATA 06/11/2008 PROGRAMAÇÃO Dados de identificação do Acadêmico: Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO
Leia maisObs.: para realizar estas atividades tenha certeza de que já tenha instalado no sistema operacional o Java JDK e o NetBeans.
1 - Criando meu primeiro programa em Java Para criar um programa Java podemos utilizar um editor de textos (Bloco de Notas/Windows, Notepad ++ ou GEdit/Linux) e o console do sistema operacional, ou um
Leia maisINF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS
INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 9 Tratamento de Exceções Assertivas 1 Programa Capítulo 9 Tratamento
Leia maisUNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA
UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA Teste de Software Engenharia de Software 2o. Semestre de 2006 Slide
Leia maisTeste de Software. Proj. Desenvolvimento de Software. Prof. Cleverton Hentz. 30 de agosto de Material Apresentado
Teste de Software Proj. Desenvolvimento de Software Prof. Cleverton Hentz cleverton.hentz@ifrn.edu.br 30 de agosto de 2017 Material Apresentado Sumário de Aula 1 Introdução 2 Níveis de Teste 3 Terminologia
Leia maisInstituto Superior de Engenharia de Lisboa
Instituto Superior de Engenharia de Lisboa Introdução à Programação (PG) Docente: Pedro Viçoso Fazenda (pfazenda@cedet.isel.ipl.pt) Professor Responsável: Pedro Alexandre Pereira (palex@cc.isel.ipl.pt)
Leia maisProgramação Orientada a Objectos - P. Prata, P. Fazendeiro
7 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract
Leia maisImplementando classes em C# Curso Técnico Integrado em Informática Fundamentos de Programação
Implementando classes em C# Curso Técnico Integrado em Informática Fundamentos de Programação Introdução Além de utilizar as classes presentes na biblioteca padrão, programadores podem definir suas próprias
Leia maisINF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS
INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Andrew Diniz da Costa andrew@les.inf.puc-rio.br Programa Capítulo 9 Tratamento de Exceções Assertivas Programa Capítulo
Leia maisReinaldo Gomes Análise/projeto estruturado
Programação Orientada a Objetos Objetos, Classes e Mensagens O Modelo de Objetos Objetos e Classes Mensagens e métodos Reinaldo Gomes reinaldo@cefet-al.br Decomposição Análise/projeto estruturado Soluciona
Leia maisMódulo I - Introdução. Faculdade Christus Sistemas de Informação 24/09/2010. Carlos Eugênio Torres Engenheiro de Informática
Módulo I - Introdução Aula 3 Carlos Eugênio Torres Engenheiro de Informática http://cetorres.com Faculdade Christus Sistemas de Informação 24/09/2010 Graduado em Ciência da Computação pela UFC, Brasil
Leia maisESQUEMA AULA PRÁTICA 0 Familiarização com o Ambiente de Desenvolvimento NetBeans Construção do primeiro programa em java.
P. Fazendeiro & P. Prata POO FP0/1 ESQUEMA AULA PRÁTICA 0 Familiarização com o Ambiente de Desenvolvimento NetBeans Construção do primeiro programa em java. 0 Iniciar o ambiente de desenvolvimento integrado
Leia maisProgramação Orientada a Objetos
Programação Orientada a Objetos Acessando Objetos Msc. Paulo de Tarso F. Júnior 1 Classe Classe: Radio - ligada : boolean - potencia : double + ligar() : void + desligar() : void + estaligada() : boolean
Leia maisCONTEÚDO PROGRAMÁTICO
CONTEÚDO PROGRAMÁTICO Java Básico Carga horária: 24 horas TreinaWeb Tecnologia LTDA CNPJ: 06.156.637/0001-58 Av. Paulista, 1765 - Conj 71 e 72 São Paulo - SP CONTEÚDO PROGRAMÁTICO 1 - Um pouco sobre o
Leia maisSingleton e Adapter. Professor: Nazareno Andrade (baseado no material de Hyggo Almeida e Jacques Sauvé)
e Adapter Professor: Nazareno Andrade (baseado no material de Hyggo Almeida e Jacques Sauvé) O que vimos na última aula? Factory Method Abstract Factory 2 O que veremos hoje? (padrão de criaçã) Adapter
Leia maisEsta categoria mais geral, à qual cada objeto pertence, denominamos de classe; IFSC/POO + JAVA - prof. Herval Daminelli
Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; Tudo no mundo real pode ser representado por meio do conceito de "objeto": uma planta, uma mesa, uma pessoa, um sentimento,
Leia maisAvançando em Java com
Avançando em Java com Polimorfismo (Interfaces) Prof.: Hugo Barros Interfaces Como já foi dito, java não permite que uma classe herde recurso de mais de uma classe. Herança múltiplipa é um recurso muito
Leia maisJava First-Tier: Aplicações. Herança: Simples Múltipla. Orientação a Objetos em Java (III) Problemas de Herança Múltipla.
Java First-Tier: plicações Orientação a Objetos em Java (III) Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Herança: Simples Múltipla O tipo de herança que usamos até agora é chamado
Leia maisFerramenta Selenium. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP
Ferramenta Selenium 1/38 O que é A ferramenta Selenium permite que se realizam testes automatizados de aplicativos Web Em particular, teste de regressão IDE Selenium Selenium WebDriver http://www.seleniumhq.org/
Leia mais