# HG changeset patch # User KUBOTA Yuji # Date 1491876740 -32400 # Node ID 1397192f0dc9503e8c2a5cee97b6fc3b71c23cc1 # Parent 2412c90533d00d06e53925e4af15abce66f8ab9b Bug 3354: [TEST]Modify test runners for testing in a similar way Reviewed-by: yasuenag https://github.com/HeapStats/heapstats/pull/89 diff -r 2412c90533d0 -r 1397192f0dc9 ChangeLog --- a/ChangeLog Tue Apr 11 08:08:45 2017 +0900 +++ b/ChangeLog Tue Apr 11 11:12:20 2017 +0900 @@ -1,6 +1,7 @@ 2017-04-10 KUBOTA Yuji * Bug 3353: [TEST]Add a test runner for deadlock and thread-recording + * Bug 3354: [TEST]Modify test runners for testing in a similar way 2017-03-25 KUBOTA Yuji diff -r 2412c90533d0 -r 1397192f0dc9 agent/test/mbean/test.sh --- a/agent/test/mbean/test.sh Tue Apr 11 08:08:45 2017 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,46 +0,0 @@ -#!/bin/sh - -#: ${JAVA_HOME?"Need to set JAVA_HOME"} -if [[ -z "$JAVA_HOME" ]]; then - JAVA_HOME=/usr/lib/jvm/java -fi - -CURRENT_DIR=`pwd` -AGENT_HOME=$CURRENT_DIR/../../ -CLASSPATH="" - -if [[ -x "$JAVA_HOME/bin/java" ]] && [[ -e "$JAVA_HOME/lib/tools.jar" ]]; then - # This testcase supports JDK8 or later - version=$(export LANG=C;"$JAVA_HOME/bin/java" -version 2>&1 | awk -F '"' '/version/ {print $2}') - if [[ "$version" > "1.8" ]]; then - CLASSPATH=$JAVA_HOME/lib/tools.jar:$AGENT_HOME/../mbean/java/target/heapstats-mbean.jar:. - fi -fi -if [[ -z "$CLASSPATH" ]]; then - echo "Install JDK8 or later, and set JAVA_HOME." - exit -1 -fi - -# Compile testcase -$JAVA_HOME/bin/javac -classpath $CLASSPATH HeapStatsJMXClient.java JMXTest.java - -# Run JMX server -$JAVA_HOME/bin/java -classpath $CLASSPATH \ - -Djava.library.path=$AGENT_HOME/../mbean/native \ - -agentpath:$AGENT_HOME/src/libheapstats-2.0.so.3 \ - -Dcom.sun.management.jmxremote=true JMXTest & -TARGET_PID=$! - -echo 'Sleep 5sec...' -sleep 5 - -# Run JMX client -$JAVA_HOME/bin/java -classpath $CLASSPATH HeapStatsJMXClient $TARGET_PID - -# Kill JMX server -kill $TARGET_PID - -# Check output -md5sum heapstats_log.csv received-log.csv -md5sum test.dat received-snapshot.dat - diff -r 2412c90533d0 -r 1397192f0dc9 agent/test/mbean/testcase.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/agent/test/mbean/testcase.sh Tue Apr 11 11:12:20 2017 +0900 @@ -0,0 +1,63 @@ +#!/bin/sh +set -e + +pushd $(dirname $0) > /dev/null + +if [[ $1 == "--clean" ]]; then + rm -rf *class heapstats_analyze*zip *log.csv *.dat + exit +fi + +JAVA_HOME=${JAVA_HOME:-/usr/lib/jvm/java-openjdk} +CLASSPATH="" + +if [[ -z "$HEAPSTATS_LIB" ]]; then + HEAPSTATS_OPT="-agentpath:/usr/lib64/heapstats/libheapstats.so" + MBEAN_JAR=/usr/lib64/heapstats/heapstats-mbean.jar + MBEAN_LIB=/usr/lib64/heapstats +else + HEAPSTATS_OPT="-agentpath:${HEAPSTATS_LIB}" + MBEAN_JAR=${HEAPSTATS_LIB%/agent*}/mbean/java/target/heapstats-mbean.jar + MBEAN_LIB=${HEAPSTATS_LIB%/agent*}/mbean/native +fi + +if [ ! -e $MBEAN_LIB ]; then + echo "Build/Install heapstats-mbean first." + exit -1 +fi + +if [[ -x "${JAVA_HOME}/bin/java" ]] && [[ -e "$JAVA_HOME/lib/tools.jar" ]]; then + # This testcase supports JDK8 or later + version=$(export LANG=C;"$JAVA_HOME/bin/java" -version 2>&1 | awk -F '"' '/version/ {print $2}') + if [[ "$version" > "1.8" ]]; then + CLASSPATH=$JAVA_HOME/lib/tools.jar:$MBEAN_JAR:. + else + echo "Install JDK8 or later, and set JAVA_HOME correctly." + exit -1 + fi +fi + +# Compile testcase +$JAVA_HOME/bin/javac -classpath $CLASSPATH HeapStatsJMXClient.java JMXTest.java + +# Run JMX server +$JAVA_HOME/bin/java -classpath $CLASSPATH \ + -Djava.library.path=$MBEAN_LIB \ + ${HEAPSTATS_OPT} \ + -Dcom.sun.management.jmxremote=true JMXTest & +TARGET_PID=$! + +echo 'Sleep 5sec...' +sleep 5 + +# Run JMX client +$JAVA_HOME/bin/java -classpath $CLASSPATH HeapStatsJMXClient $TARGET_PID + +# Kill JMX server +kill $TARGET_PID + +# Check output +md5sum heapstats_log.csv received-log.csv +md5sum test.dat received-snapshot.dat + +popd > /dev/null diff -r 2412c90533d0 -r 1397192f0dc9 agent/test/oome/testcase.sh --- a/agent/test/oome/testcase.sh Tue Apr 11 08:08:45 2017 +0900 +++ b/agent/test/oome/testcase.sh Tue Apr 11 11:12:20 2017 +0900 @@ -1,4 +1,7 @@ #!/bin/bash +set -e + +pushd $(dirname $0) >/dev/null ### Usage ### - Without Valgrind @@ -9,24 +12,31 @@ ### JAVA_OPTS="/dev/null diff -r 2412c90533d0 -r 1397192f0dc9 agent/test/snapshot/testcase.sh --- a/agent/test/snapshot/testcase.sh Tue Apr 11 08:08:45 2017 +0900 +++ b/agent/test/snapshot/testcase.sh Tue Apr 11 11:12:20 2017 +0900 @@ -1,4 +1,6 @@ #!/bin/bash +set -e +pushd $(dirname $0) >/dev/null ### Usage ### - Without Valgrind @@ -9,16 +11,20 @@ ### JAVA_OPTS="/dev/null