PDF de programación - Interfaces con el Usuario - UI Testing

Filtrado por el tag: n
<<>>
Imágen de pdf Interfaces con el Usuario - UI Testing

Interfaces con el Usuario - UI Testinggráfica de visualizaciones

Publicado el 3 de Julio del 2017
788 visualizaciones desde el 3 de Julio del 2017
169,7 KB
10 paginas
Creado hace 16a (30/03/2009)
Interfaces con el Usuario

UI Testing

David Cabrero Souto

Facultad de Informática
Universidade da Coruña

Curso 2008/2009

¿ Qué es testing ?

Testing is an activity performed for evaluating product
quality, and for improving it, by identying defects and
problems.

IEEE Software Engineering Body of Knowledge

El “testing” implica la realización de pruebas

¿ Cómo creo las pruebas ? (automático|manual|ambas)
¿ Cómo ejecuto las pruebas ? (automático|manual|ambas)

¿ Cómo automatizo las pruebas en una IGU ?

En una IGU existen operaciones que Implican interacción con
teclado y ratón

Automatización de IGUs

Herramientas “visuales”. Registran y reproducen eventos.
Pros: independiente de la librería gráfica
Cons: depende de posiciones, tamaños, disposición, theme,
. . .

Tus ojos pueden engañarte, Luke. No confíes en
ellos.

Obi Wan

Ejemplo: xnee
APIs de accesibilidad
Pros: acceso “lógico” a los widgets
Cons: depende de la librería
Ejemplos: gtk-atk, qt4, Ms UIA

Accesibilidad en Gnome. Visión general

Gnome incorpora estructura de accesibilidad (a11y)
GTK incluye la implementación del API de accesibilidad ATK
(Accesibility ToolKit)

Si mi aplicación usa GTK no es necesario que implemente
dicho API
A no ser que cree widgets nuevos

ATK se expone a través del API AT-SPI (Assistive Technology
Service Provider Interface)

Accesibilidad en Gnome. Arquitectura

CC-by-sa 2.0 Eitan Isaacson

Herramientas basadas en AT-SPI

Accerciser.
Orientada a accesibilidad
LTDP, dogtail, strongwind
Frameworks/librerías para testing

Python AT-SPI

Wrapper de AT-SPI para python

>>> import pyatspi
>>> reg = pyatspi.Registry
>>> desktop = reg.getDesktop(0)
>>> app = pyatspi.findDescendant(desktop, lambda x: x.name==’run.py’, breadth_first=True)
>>> app
>>> boton = pyatspi.findDescendant(app, lamda x: x.getRoleName==’menu item’)
>>> boton
>>> boton.queryAction().doAction(0)

Ejemplo: Dogtail (i)

Framework para escribir scripts python

Ejemplo: Dogtail (ii)

Ejemplo de test para evolution (screencast).

#!/usr/bin/env python
# Dogtail demo script
__author__ = ’David Malcolm <[email protected]>’

# Test configuring an IMAP and SMTP account
#
# Assumes evolution is configured and is running

from dogtail.apps.wrappers.evolution import *

account = MixedAccount(fullName="John Doe",

emailAddress="[email protected]",
receiveMethod = IMAPSettings(server="mail.example.com",

username="jdoe",
useSecureConnection=UseSecureConnection.ALWAYS,
authenticationType="password"),

sendMethod = SMTPSettings(server="smtp.example.com",

useSecureConnection=UseSecureConnection.NEVER))

evo = EvolutionApp()
evo.createAccount(account, "test IMAP/SMTP account")

Ejemplo: Dogtail (iii)

$ python

>>> from dogtail.tree import root
>>> f = root.application(’run.py’)
>>> f.dump()

>>> from dogtail.procedural import *
>>> focus.application(’run.py’)
>>> click(’Acerca de’)
>>> click(’Cerrar’)
>>> click(’Acerca de’)
>>> click(’Cerrar’)
  • Links de descarga
http://lwp-l.com/pdf4817

Comentarios de: Interfaces con el Usuario - UI Testing (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad