Back To The Front - Javascript Test Driven Development is between us (workshop)Marco Cedaro
Javascript & browsers have been for years a complex and unsafe environment for a web developer, now we have the right tools to gain control on what we are distributing in our web applications. During the workshop you will learn first-hand basic Javascript Test Driven Development practices including testing, refactoring and related agile practices such as continuous integration and pair programming.
presented at italian Back To The Front conference /w @sirLisko
Back To The Front - Javascript Test Driven Development is between us (workshop)Marco Cedaro
Javascript & browsers have been for years a complex and unsafe environment for a web developer, now we have the right tools to gain control on what we are distributing in our web applications. During the workshop you will learn first-hand basic Javascript Test Driven Development practices including testing, refactoring and related agile practices such as continuous integration and pair programming.
presented at italian Back To The Front conference /w @sirLisko
Hands-On Java web passando por Servlets, JSP, JSTL, JDBC, Hibernate, DAO, MV...Mario Jorge Pereira
Material sobre Java WEB super mão na massa. Vou construindo e alterando uma aplicação durante a apresentação os assuntos cobertos são:
Java Servlet
Java Server Pages - JSP
JavaServer Pages Standard Tag Library - JSTL
Expression Language - EL
Java Database Connectivity - JDBC
Data Access Object - DAO
Model View Controller - MVC
Hibernate
...
Apresento também formas de fugir do sqlinjection
Une immense majorité de développeurs connaissent jQuery, mais pas vraiment JavaScript. Nous verrons comment faire en pur JS ce que vous avez l’habitude de faire avec jQuery et jQuery UI, en mettant l’accent sur le support par les navigateurs des fonctionnalités JS utilisées, et sur les polyfills disponibles.
Lettuce example using scenarios outlineKaren Wiznia
This document outlines an example that uses Lettuce scenarios to test a weather API. It defines 5 scenarios that check: 1) if city and country values returned are correct, 2) if latitude and longitude values returned are correct, 3) if temperature returned is correct for a given city and country, 4) if temperature returned is correct for given latitude and longitude. It includes feature files that define the scenarios and Python files that implement the scenario steps to make API calls and assertions.
This document describes using Lettuce to test an API for weather data. It includes a feature file with scenarios to check that city/country names, latitude/longitude, and temperature values are returned correctly from the API. It also includes a Python file with steps to access the API URL, check the response values, and assert that expected results are obtained.
Este documento describe un proyecto para crear un telesketch automático controlado por computadora. El sistema usaría motores para mover el telesketch y dibujar diseños predefinidos, y luego usaría un servomotor para voltear el telesketch y borrar el dibujo. También lista los componentes necesarios como motores, servomotor, leds y engranajes, junto con sus precios aproximados.
El documento describe un programa para dibujar figuras utilizando servomotores. Define variables y funciones para controlar los servomotores horizontal y vertical, detectar los botones y dibujar figuras como cuadrados, triángulos, rectángulos y números del 0 al 9.
Este documento describe un proyecto para crear un telesketch automático controlado por computadora. El sistema usaría motores para mover el telesketch y dibujar diseños predefinidos, y luego usaría un servomotor para voltear el telesketch y borrar el dibujo. También lista los componentes necesarios como motores, servomotor, leds y engranajes, junto con sus precios aproximados.
Selenium es una herramienta de pruebas de software para aplicaciones web que permite escribir pruebas en varios lenguajes de programación como Python. Selenium WebDriver se utiliza para probar el correcto funcionamiento de una página web enviando comandos y obteniendo resultados. El documento proporciona ejemplos de cómo usar Selenium WebDriver con Lettuce en Python para realizar pruebas en una página web, incluyendo seleccionar elementos, escribir texto, realizar drag and drop, y manejar excepciones. También introduce a Pycabara, una implementación de Python de
El documento describe la evolución y tipos principales de malware. Explica que el malware ha evolucionado paralelamente a la tecnología para volverse más complejo y perseguir objetivos como el robo. Describe los tipos de malware infecciosos como virus y gusanos, malware oculto como troyanos, y malware para obtener beneficios como adware y spyware que recopilan información para mostrar publicidad.
Hands-On Java web passando por Servlets, JSP, JSTL, JDBC, Hibernate, DAO, MV...Mario Jorge Pereira
Material sobre Java WEB super mão na massa. Vou construindo e alterando uma aplicação durante a apresentação os assuntos cobertos são:
Java Servlet
Java Server Pages - JSP
JavaServer Pages Standard Tag Library - JSTL
Expression Language - EL
Java Database Connectivity - JDBC
Data Access Object - DAO
Model View Controller - MVC
Hibernate
...
Apresento também formas de fugir do sqlinjection
Une immense majorité de développeurs connaissent jQuery, mais pas vraiment JavaScript. Nous verrons comment faire en pur JS ce que vous avez l’habitude de faire avec jQuery et jQuery UI, en mettant l’accent sur le support par les navigateurs des fonctionnalités JS utilisées, et sur les polyfills disponibles.
Lettuce example using scenarios outlineKaren Wiznia
This document outlines an example that uses Lettuce scenarios to test a weather API. It defines 5 scenarios that check: 1) if city and country values returned are correct, 2) if latitude and longitude values returned are correct, 3) if temperature returned is correct for a given city and country, 4) if temperature returned is correct for given latitude and longitude. It includes feature files that define the scenarios and Python files that implement the scenario steps to make API calls and assertions.
This document describes using Lettuce to test an API for weather data. It includes a feature file with scenarios to check that city/country names, latitude/longitude, and temperature values are returned correctly from the API. It also includes a Python file with steps to access the API URL, check the response values, and assert that expected results are obtained.
Este documento describe un proyecto para crear un telesketch automático controlado por computadora. El sistema usaría motores para mover el telesketch y dibujar diseños predefinidos, y luego usaría un servomotor para voltear el telesketch y borrar el dibujo. También lista los componentes necesarios como motores, servomotor, leds y engranajes, junto con sus precios aproximados.
El documento describe un programa para dibujar figuras utilizando servomotores. Define variables y funciones para controlar los servomotores horizontal y vertical, detectar los botones y dibujar figuras como cuadrados, triángulos, rectángulos y números del 0 al 9.
Este documento describe un proyecto para crear un telesketch automático controlado por computadora. El sistema usaría motores para mover el telesketch y dibujar diseños predefinidos, y luego usaría un servomotor para voltear el telesketch y borrar el dibujo. También lista los componentes necesarios como motores, servomotor, leds y engranajes, junto con sus precios aproximados.
Selenium es una herramienta de pruebas de software para aplicaciones web que permite escribir pruebas en varios lenguajes de programación como Python. Selenium WebDriver se utiliza para probar el correcto funcionamiento de una página web enviando comandos y obteniendo resultados. El documento proporciona ejemplos de cómo usar Selenium WebDriver con Lettuce en Python para realizar pruebas en una página web, incluyendo seleccionar elementos, escribir texto, realizar drag and drop, y manejar excepciones. También introduce a Pycabara, una implementación de Python de
El documento describe la evolución y tipos principales de malware. Explica que el malware ha evolucionado paralelamente a la tecnología para volverse más complejo y perseguir objetivos como el robo. Describe los tipos de malware infecciosos como virus y gusanos, malware oculto como troyanos, y malware para obtener beneficios como adware y spyware que recopilan información para mostrar publicidad.
1. Ejemplos testing:
Cakes example:
package prueba.Selenium2;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
public class TestXPath {
private WebDriver driver;
@Before
public void setUp() {
driver = new FirefoxDriver();
driver.manage().window().maximize(); //maximizo la ventana
}
@Test
public void CheeseCake() {
//entra en esta pagina
driver.get("http://www.cheesecake.com/");
//Seleccionar una pestaña, en este caso "cakes"
driver.findElement(By.xpath("/html/body/form/div[5]/div/div/div/div/di
v/div/ul/li[8]/a/span")).click();
//Selecciona una tarta
driver.findElement(By.xpath("/html/body/form/div[5]/div/div/div[3]/div
[3]/div/div[2]/div/table/tbody/tr/td/div/div[2]/a")).click();
//Escribe el valor de codigo postal
driver.findElement(By.xpath("id('ContentPlaceHolder1_txtZip')")).sendK
eys("28080");
//Creo el elemento e para usar en el combo
WebElement e=
driver.findElement(By.xpath("html/body/form/div[5]/div[1]/div[1]/div[4]/div/d
iv[2]/table[1]/tbody/tr[5]/td/select/option[4]"));
//Desplegamos el desplegable
driver.findElement(By.xpath("/html/body/form/div[5]/div/div/div[4]/div
/div[2]/table/tbody/tr[5]/td/select")).sendKeys(e.getText());
//Seleccionamos el campo correspondiente a "hospital" del
desplegable
2. driver.findElement(By.xpath("/html/body/form/div[5]/div/div/div[4]/div
/div[2]/table/tbody/tr[5]/td/select/option[4]")).click();
//Pinchamos sobre "add to cart"
driver.findElement(By.xpath("/html/body/form/div[5]/div/div/div[4]/div
/div[2]/table[2]/tbody/tr/td/a/span")).click();
}
@After
public void tearDown() {
driver.close();
}
ElCorteIngles example:
package prueba.Selenium2;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
public class TestXpath {
private WebDriver driver;
@Before
public void setUp() {
driver = new FirefoxDriver();
driver.manage().window().maximize(); //maximizo la ventana
}
@Test
public void corteIngles(){
//Entro a esta pagina
driver.get("http://www.elcorteingles.es/");
//Hago click en Lego
driver.findElement(By.xpath("/html/body/div[5]/div/div[4]/div/div/div/
a[3]/div/span")).click();
//Selecciono un producto
driver.findElement(By.xpath("/html/body/div[5]/div[3]/div/ul/li[3]/h2/
a")).click();
//Presiono sobre el boton agregar a la cesta
driver.findElement(By.xpath("/html/body/div[5]/div[4]/div[4]/ul/li/div
[4]/form/div[3]/a")).click();
}
@After
public void tearDown() {
3. driver.close();
}
}
Amazon example:
package prueba.Selenium;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
public class TestXpath {
private WebDriver driver;
@Before
public void setUp() {
driver = new FirefoxDriver();
driver.manage().window().maximize(); //maximizo la ventana
}
@Test
public void corteIngles(){
driver.get("http://www.amazon.co.uk/");
//Selecciono el producto que deseo comprar
driver.findElement(By.xpath("/html/body/header/div/div[2]/div[2]/div[3
]/form/div[2]/div/input")).sendKeys("books");;
//press find
driver.findElement(By.xpath("/html/body/header/div/div[2]/div[2]/div[3
]/form/div/input")).click();
//Select book
driver.findElement(By.xpath("/html/body/div/div/div[4]/div[2]/div/div[
4]/div/div/ul/li/div/div/div/div[2]/div[2]/div/div/a/h3")).click();
//Add to basket
driver.findElement(By.xpath("id('add-to-cart-
button')")).click();
//proceed to checkout
driver.findElement(By.xpath("id('hlb-ptc-btn-
native')")).click();
}
@After
public void tearDown() {
driver.close();