16-julio-2018
admin

Uso de wait en Selenium

En los test de selenium podemos esperar a que se ejecuten determinadas acciones para facilitar el testeo de las web.

Ejemplo 1: Este ejemplo espera hasta 10 segundos antes de lanzar una excepción TimeoutException a menos que encuentre el elemento myDynamicElement para regresar dentro de 10 segundos.
Es interesante combinarlo con las ExpectedConditions aunque también se puede hacer consulta estática.

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

driver = webdriver.Firefox()
driver.get("http://somedomain/url_that_delays_loading")
try:
    element = WebDriverWait(driver, 10).until(
        EC.presence_of_element_located((By.ID, "myDynamicElement"))
    )
finally:
    driver.quit()



Ejemplo 2: En este se establece 10 segundos como el tiempo de espera máxima para buscar cualquier elemento.

from selenium import webdriver

driver = webdriver.Firefox()
driver.implicitly_wait(10) # seconds
driver.get("http://somedomain/url_that_delays_loading")
myDynamicElement = driver.find_element_by_id("myDynamicElement")



Fuente

2-julio-2018
admin

Programa de audio para Raspberry pi (alsamixer)

Alsamixer es un programa de mezclado de audio para la arquitectura de sonido de Linux ALSA. Se utiliza para configurar el sonido y ajustar los volúmenes. Se ejecuta por consola.

Configuración

-h, -help 	Ayuda: muestra las opciones disponibles.
-c  	Selecciona la placa de 
sonido a utilizar, si en el sistema existen más de una placa. 
Las placas se numeran desde 0 (por defecto).
-D  	Selecciona el mezclador 
para el control.
-g 	Cambia el uso de colores.
-s 	Minimiza la ventana del mezclador
-V  	Selecciona el modo de vista inicial, 
reproducción, captura o todos.

Fuente

1-julio-2018
admin

Reproductor multimedia para Raspberry Pi (Omxplayer)

Omxplayer es una aplicación que viene instalada por defecto en Raspbian. Este reproductor multimedia se ejecuta desde un terminal y nos permite controlarlo desde allí de forma sencilla mediante conexión ssh.

Ejemplo de uso… Supongamos que queremos reproducir el fichero videoclip.mp3
Bastaría simplemente con ejecutar en la consola: omxplayer -o hdmi videoclip.mp3
Eso sería la forma mas sencilla de utilizarlo, si por ejemplo quisiéramos utilizar un altavoz conectado por USB el comando seria: omxplayer -o alsa:hw:1,0 videoclip.mp3

Una vez lanzado podríamos interactuar con la reproducción utilizando nuestro teclado:

    z – Mostrar información del vídeo
    1 – Aumentar velocidad
    2 – Reducir velocidad
    j – Cambiar al anterior canal de audio
    k – Cambiar al siguiente canal de audio
    i – Capitulo anterior
    o – Siguiente capítulo
    n – Anterior idioma de subtítulos
    m – Siguiente idioma de subtítulos
    s – Cambiar subtítulos
    d – Atrasar subtítulos 250 ms
    f – Adelantar subtítulos 250 ms
    q – Cerrar omxplayer
    Espacio / P – Pausar / reanudar
    – Bajar volumen
    + Subir volumen
    Flecha a la izquierda – Retorceder 30 segundos
    Flecha a la derecha – Avanzar 30 segundos
    Flecha abajo – Retroceder 600 segundos
    Flecha arriba – Avanzar 600 segundos

Documentación Omxplayer

19-junio-2018
admin

Automatizar tareas en cron

Paso 1/ Instalamos el gnome-schedule

sudo apt-get install gnome-schedule

Paso 2/ Editamos la tabla de tareas

crontab -e
# m h  dom mon dow   command
# * * * * *  command to execute
# - - - - -
# ¦ ¦ ¦ ¦ ¦
# ¦ ¦ ¦ ¦ ¦
# ¦ ¦ ¦ ¦ +----- day of week (0 - 7) (0 to 6 are Sunday to Saturday, or use names; 7 is Sunday, the same as 0)
# ¦ ¦ ¦ +---------- month (1 - 12)
# ¦ ¦ +--------------- day of month (1 - 31)
# ¦ +-------------------- hour (0 - 23)
# +------------------------- min (0 - 59)

0 0 * * * /home/pi/backup.sh

0 */3 * * * sudo service serv1 start
0 */4 * * * sudo service serv2 start

Paso 3/ Podemos listar las tareas con el comando

crontab -l

Nota: Despues de realizar modificaciones es necesario reiniciar el servicio.

sudo /etc/init.d/cron restart
9-junio-2018
admin

Spring-Boot y variables de entorno

Formas de pasar información a una aplicación java realizada con spring-boot:

Variable de entorno
Podemos crear una variable de entorno añadiendola directamente desde la consola o bien en el propio entorno de desarrollo (la imagen es con un eclipse.)

set MI_VARIABLE=Hola!!

Podemos acceder a ellas desde la apliación así:

String myVar = System.getenv().get("MI_VARIABLE");



Línea de comandos
Podemos pasar propiedades por línea de comandos, por ejemplo:

java -jar -DmiVariable=Hola programa.jar

Para su lectura bastaria con

@Autowired 
private Environment env;
.....
String value = env.getProperty( "miVariable" );
.....



application.properties y application-xxx.properties
En el fichero application.properties puedes añadir también variables:

var.prueba.1=valor1
var.prueba.2=valor2
....

Adicionalmente en Spring-Boot podriamos crear otros ficheros application-xxx.properties. XXX hace referencia al profile que quieras usar, podemos definir que profile se va a utilizar mediante la propiedad spring.profiles.active. Es decir, si queremos que los valores de las variables se obtengan prioritariamente del fichero application-local.properties deberíamos asignar el valor local a la propiedad spring.profiles.active.

spring.profiles.active=local


Documentación profile

28-enero-2018
admin

Steam Link en una Raspberry PI con Moonlight

El Steam Link es una herramienta que te permite jugar a tus juegos de Steam en cualquier TV de tu hogar. Si no queremos comprarnos el aparato en cuestion podriamos utilizar una raspberry para realizar la misma tarea utilizando moonlight.

Moonlight es la implementación Open Source del GameStream para los dispositivos SHIELD. La gente de Nvidia sacó moonlight (antes limeLight) para que los fabricantes pudiesen compatibilizar su hardware con GameStream, más info en: http://moonlight-stream.com/

Antes de nada, comentar que para poder hacer esto necesitamos que nuestra tarjeta permita GameStream. GameStream permite a las tarjetas gráficas GeForce GTX para transmitir en streaming, a través de tu red, los juegos del PC al dispositivo SHIELD y permitirte disfrutar de ellos en cualquier lugar.

Vamos a explicar un poco por encima como seria el proceso:

1/ Instalamos en nuestra raspberry un raspbian lite. Lo podemos descargar de esta url.
Tras descargarlo debemos formatear la SD usando por ejemplo la herramienta SDFormarter. A continuación, ya podemos instalar el raspbian utilizando el Win32DiskImager.

2/ Ahora ya podemos iniciar nuestra raspberrty. Una vez iniciada debemos realizar una serie de tareas de configuración:
Poner una IP fija a nuestra raspberry.

sudo nano /etc/network/intertarfaces

auto lo
iface lo inet loopback 
auto eth0
iface eth0 inet static
address 192.168.1.40
netmask 255.255.255.0
gateway 192.168.1.1

Habilitamos el SSH, lo podemos hacer desde el comando

sudo raspi-config

Reiniciamos las rapsberry.

3/ Ya solo queda el último paso, instalar el moonlight. Esta aplicación es la que va a permitir simular el funcionamiento de steam link en las raspberry.
Nos conectamos por ssh a la raspberry y ejecutamos el comando siguiente para que descargue el moonlight.

wget raw.githubusercontent.com/the-raspberry-pi-guy/game_stream/master/install.sh

Tras descargarlo ya podemos instalarlo

sh install.sh

Emparejamos nuestra raspberry con nuestro ordenador que tiene steam arrancado. Esto nos va a dar un pin que debemos meter en nuestro pc, donde la configuracion de nuestra tarjeta gráfica.

moonlight pair ipOrdenadorSteam

4/ Lanzamos el steam en la raspberry con el comando.

moonlight stream -1080 -30fps -app Steam

Documentación

16-enero-2018
admin

Presentando el Jmeter

JMeter es un proyecto de Apache que puede ser utilizado como una herramienta de prueba de carga para analizar y medir el desempeño principalmente de las aplicaciones web. Es decir, te permite medir si tu aplicación se va a comportar igual con 100 usuarios que con 10.000. No se trata de ninguna herramienta nueva ya que su primera versión se lanzó en el año 2001.

La instalación es tan sencilla como ir la url, descargartelo y descomprimirlo.

Para ejecutarlo se debe lanzar con el fichero jmeter.bat o ./jmeter.sh.

A continuación un par de videos que sirven como toma de contacto para su uso y hacernos una idea de su potencia:



5-enero-2018
admin

IONIC: Error occurred during initialization of VM

La solución al error que se muestra a continuación al compilar una aplicación IONIC:
IONIC: Error occurred during initialization of VM

Es añadir la variable de entorno _JAVA_OPTIONS. Para ello ir a Inicio – Panel de control – Sistema – Avanzado – Variables de systema – Nueva.
IONIC: Error occurred during initialization of VM

27-diciembre-2017
admin

Primera aplicación con IONIC

Ionic es una herramienta, gratuita y open source, para el desarrollo de aplicaciones híbridas basadas en HTML5, CSS y JS. Está construido con Sass y optimizado con AngularJS.
Se trata de una tecnología muy valida siempre que se impongan al cliente ciertas restricciones en las versiones de los dispositivos soportados. Es decir: Android 4.4+, IOS 8+ y Windows 10+ (Phone y Desktop).

Requisitos previos
– Tener instalado jdk 1.8
– Para android, tener instalado la sdk android (puedes usar el Android Studio)
– Tener instalado Gradle (descargar, descomprimirlo y luego meterlo al path)

Instalamos el framework

	npm install -g ionic@beta
	npm install -g ionic
	npm install -g cordova


Creamos la primera aplicación de ejemplo, podemos elegir uno de estos tipos:
– tabs : a simple 3 tab layout
– sidemenu: a layout with a swipable menu on the side
– blank: a bare starter with a single page
– super: starter project with over 14 ready to use page designs
– tutorial: a guided starter project

	ionic start AppExampleIonic sidemenu  --typescript


Comandos a conocer:

        //Lanza la aplicación en el emulador
	ionic serve

        //Lanza la aplicación en varios tipos de plataformas en el navegador
	ionic serve --lab

        //añade las plataformas a utilizar
	ionic cordova platform add ios android windows

        //Lanza la aplicación android
	ionic cordova run android

        //cosntruye la apliación android
	ionic cordova build android

        //Generar una version de android para producción
	ionic cordova build android --release

        //Generar una version de android para producción
	ionic cordova build ios --prod

Fuente

20-diciembre-2017
admin

Transiciones CSS. Mejorando el diseño.

A continuación se muestran dos links con información sobre transiciones.

https://www.bootply.com/tagged/transition
Se trata de una web que contiene diferentes ejemplos de transiciones realizadas con Bootstrap.


https://daneden.github.io/animate.css/
Se trata de una css que contiene un monton de animaciones muy interesantes. Se instala con npm mediante:

npm install animate.css --save

Y luego solo tienes que incluirla:

< head>
  < link rel="stylesheet" href="animate.min.css">
< /head>
Páginas:1234567...24»

Categorias

Linkedin