Puede crear y utilizar un script para que le ayude en el desarrollo de procesos.
Acerca de esta tarea
La creación y ejecución de un script es un proceso simple de pocos
pasos. Si está familiarizado con los lenguajes de creación de scripts como Ant,
el proceso de creación es incluso más sencillo.
IBM® Integration
Designer
incluye la capacidad de trabajar con proyectos que no sean módulos y
bibliotecas.
También incluye los archivos de proceso por lotes siguientes que puede
utilizar para invocar scripts Ant a fin de ejecutar compilaciones de
IBM Integration
Designer:
Estos archivos se encuentran en el directorio
inicio_WID\bin (donde inicio_WID es el directorio de
instalación de
IBM Integration
Designer).
Se recomienda utilizar el archivo runAntWID.bat. Este archivo es parecido al
archivo runAnt.bat, pero el archivo runAntWID.bat configura la variable
classpath para evitar posibles problemas al crear proyectos de
IBM Integration
Designer.
Si utiliza el sistema operativo Linux y no se ha definido la variable
de entorno JAVA_HOME, el archivo runAntWID.sh utiliza automáticamente
la JVM de IBM Integration
Designer. Sin embargo, si la variable JAVA_HOME está definida, tendrá que
cambiarla para que apunte la JVM de IBM Integration
Designer
mediante la inclusión del directorio siguiente:
vía_instalación_Integration_Designer/jdk
Por ejemplo:
/opt/ibm/IntegrationDesigner/v8.5/jdk
Siga estos pasos para crear y ejecutar un script Ant.
- Genere una contraseña cifrada. Como se ha visto en Visión general de las pruebas con scripts Ant en modalidad autónoma de IBM Integration Designer no es necesaria
una contraseña cifrada. No obstante, si comparte su script y desea
que la contraseña sea confidencial, se recomienda cifrar la contraseña.
Se proporciona un programa de utilidad para generar la contraseña cifrada.
- En el directorio <dir_instalación>\bin, edite
runAntWidSecurity, añada una contraseña y guarde
el archivo.
- Ejecute runAntWidSecurity para
generar la contraseña cifrada.
- Cree un script. El siguiente ejemplo es una indicación del tipo de
script que puede crear.
El script empieza con una lista de propiedades, que es una forma efectiva de
utilizar variables que pueden cambiarse, en lugar de utilizar valores
codificados. Las propiedades ofrecen información sobre el ID de usuario de CVS, la contraseña,
la secuencia CVS, los módulos necesarios, etc.
A continuación, es script extrae módulos del sistema de versiones
simultáneas (CVS) y los importa en
IBM Integration
Designer.
Una vez
dentro, los módulos se despliegan en un servidor y se ejecutan.
La contraseña cifrada debe utilizarse como contraseña para el servidor.
Varias de estas tareas son
tareas
Ant estándar conocidas para los usuarios que trabajan con
Ant
en Eclipse. No obstante, para WebSphere Integration Edition se han
añadido algunas tareas especiales. Estas tareas se describen en
Tareas de Ant adicionales. El sistema CVS
también tiene algunos
mandatos
de CVS que debe conocer si el script va a extraer archivos de un
repositorio de CVS.
<project name="Automated Test Case Run" basedir="." default="run">
<property name="password" value="mypassword"/>
<property name="user" value="myuserid"/>
<property name="module" value="OrderEntry"/>
<property name="testp" value="OrderTest"/>
<property name="testfile" value="OrderTest.xml"/>
<property name="url" value="http://localhost:9080/OrderTestWeb/TestServlet"/>
<property name="cvsroot" value=":pserver:${user}:${password}@cvs.mycorporation.com:/cvs/wid/wbit_comptest"/>
<property name="extract.dir" value="F:\Archivos de programa\IBM\WID61\workspacetestscript"/>
<property name="cvs.stream" value="HEAD"/>
<property name="log.filename" value="./cvsextract"/>
<target name="checkout">
<cvs cvsroot="${cvsroot}" cvsrsh="ssh" dest="${extract.dir}" package="TestCase/${module}" command="export -r ${cvs.stream} -d ${module}" output="${log.filename}m.log" quiet="true"/>
<cvs cvsroot="${cvsroot}" cvsrsh="ssh" dest="${extract.dir}" package="TestCase/${testp}" command="export -r ${cvs.stream} -d ${testp}" output="${log.filename}t.log" quiet="true"/>
</target>
<!-- extraer los proyectos de CVS no hace que estén visibles para eclipse, deben importarse los proyectos ahora -->
<target name="importProject" depends="checkout">
<importProject projectName="${module}"/>
<importProject projectName="${testp}"/>
</target>
<target name="build" depends="importProject">
<projectBuild projectName="${module}"/>
<projectBuild projectName="${testp}"/>
</target>
<target name="deploy" depends="build">
<wid.deploy projectName="${module}" userid="admin" password="{xor}PjsyNjE=" profile="wps" connectionType="SOAP" port="8880"/>
<wid.deploy projectName="${testp}"/>
</target>
<target name="run" depends="deploy">
<get dest="${testfile}" src="${url}"/>
<wid.undeploy projectName="${module}"/>
<wid.undeploy projectName="${testp}"/>
</target>
</project>
Hay muchos otros ejemplos de scripts disponibles:
- Si ha hecho referencia a algunas variables de entorno de propiedad en el editor de suites de pruebas para un proyecto de prueba de componente, suite
de pruebas o caso de prueba, y desea definir las variables de entorno en el URL del servlet, puede utilizar la sintaxis siguiente:
http://myHost:9080/MyTestWeb/TestServlet?DRUG=drug%20claim&AMOUNT=100&DATE=2011-07-05
En
ejemplo anterior, hay tres definiciones de variable de entorno
añadidas al final del URL. Cada definición debe estar separada por un símbolo &. En el URL, el código de escape %20 se utiliza para codificar un espacio porque el URL no permite determinados caracteres ASCII.
En el ejemplo, las tres variables de entorno que están definidas son:
- DRUG: "reclamación de medicamento"
- AMOUNT: 100
- DATE: 2011-07-05
- Una vez que tenga su script, debe editar el archivo por lotes
runAntWid o el script de shell para que apunte al espacio
de trabajo correcto. runAntWid se encuentra en el
directorio <dir_instalación>\bin. En este ejemplo,
el espacio de trabajo es workspacetestscript.
Observe que el
espacio de trabajo está completamente calificado para indicar la unidad y la
vía de acceso (o el inicio y la vía de acceso en un sistema Linux).
@echo off
setlocal
set BASE_DIR=%~dp0
set VMARGS=-Xms512m -Xmaxf0.1 -Xminf0.05 -Xmx1024m -Xgcpolicy:gencon -Xscmx96m -Xshareclasses:singleJVM,keep -XX:MaxPermSize=512M -Xss2048k
set JAVA_HOME=%BASE_DIR%..\eclipse\jdk
@if not exist "%JAVA_HOME%\jre\bin" set JAVA_HOME=%BASE_DIR%..\jdk
@if not exist "%JAVA_HOME%\jre\bin" echo ERROR: JAVA_HOME must point to Java installation containing jre\bin
@if not exist "%JAVA_HOME%\jre\bin" goto done
:startup
set STARTUP_JAR="%BASE_DIR%..\startup.jar"
@if exist "%BASE_DIR%..\eclipse.exe" goto im
for /f "delims= tokens=1" %%c in ('dir /B /S /OD "%BASE_DIR%..\eclipse\plugins\org.eclipse.equinox.launcher_*.jar"') do set STARTUP_JAR=%%c
goto checkstartup
:im
for /f "delims= tokens=1" %%c in ('dir /B /S /OD "%BASE_DIR%..\plugins\org.eclipse.equinox.launcher_*.jar"') do set STARTUP_JAR=%%c
:checkstartup
@if not exist "%STARTUP_JAR%" echo ERROR: Unable to locate Eclipse startup.jar
@if not exist "%STARTUP_JAR%" goto done
:workspace
if not $"%WORKSPACE%"$==$$ goto check
REM #######################################################
REM ##### debe editar el valor "WORKSPACE" que figura más abajo #####
REM #######################################################
REM *********** La ubicación del espacio de trabajo ************
set WORKSPACE=X:\MyWorkspace
:check
REM ************* La ubicación del espacio de trabajo *****************
if not exist "%WORKSPACE%" echo ERROR: incorrect workspace=%WORKSPACE%, edit this runAntWid.bat and correct the WORKSPACE envar
if not exist "%WORKSPACE%" goto done
:run
@echo on
"%JAVA_HOME%\jre\bin\java.exe" %VMARGS% -Dwtp.autotest.noninteractive=true -cp "%STARTUP_JAR%" org.eclipse.core.launcher.Main -application com.ibm.wbit.comptest.ant.RunAntWid -data "%WORKSPACE%" %*
@if %ERRORLEVEL% EQU 0 goto done
@if %ERRORLEVEL% EQU 13 echo runAnt BUILD FAILED.
@if %ERRORLEVEL% EQU 13 goto done
@if %ERRORLEVEL% EQU 15 echo WORKSPACE is already BEING USED.
@if %ERRORLEVEL% EQU 15 goto done
@if %ERRORLEVEL% EQU 23 echo totally clean (UNINITIALIZED) workspace, it is now setup. will rerun...
@if %ERRORLEVEL% EQU 23 goto run
@echo runAnt FAILED? (return code %ERRORLEVEL%)
:pause
@pause
:done
Como alternativa para modificar el script, puede establecer la variable de
entorno del espacio de trabajo. Por ejemplo: set
WORKSPACE=G:\workspacefinaltest.
Consulte Ejemplo de un archivo de proceso por lotes para iniciar un script para obtener otro ejemplo
parecido del archivo por lotes.
- A continuación, cree un archivo por lotes o un script de shell que lanzará
el script como parámetro para el archivo por lotes
runAntWid. Aunque puede lanzar el script usted mismo
desde una ventana de mandatos, en la mayoría de los casos es conveniente crear
un archivo por lotes o un script de shell y hacer que el sistema operativo
lance el script por la noche cuando el sistema está disponible. En nuestro
ejemplo, se lanza runAntWid y el script que ejecuta,
doAll.xml, se encuentra en el directorio
testscript de la unidad e:.
pushd f:\Archivos de programa\IBM\WID61\bin
runAntWid -buildfile e:\testscript\doAll.xml
popd
El archivo por lotes es muy práctico. También puede ejecutar el script desde
una ventana de mandatos escribiendo runAntWid -buildfile
<directorio>
- Ejecute el archivo por lotes o el script de shell o utilice los servicios
del sistema operativo para ejecutarlo en la hora más adecuada. Evidentemente,
ésta es la mayor ventaja del uso de scripts: los scripts pueden ejecutarse
en momentos más apropiados, como por la noche o en fin de semana.
- Examine los resultados marcados como pass/fail en el archivo XML devuelto.
Este archivo se colocará en el directorio definido en el script. Consulte
Ejemplo de un archivo de salida XML, donde se muestra un ejemplo
del tipo de salida que cabe esperar.