Détermination du nombre d'exécutions du code

La classe CountAllIterations compte le nombre de fois que le code est exécuté par tous les utilisateurs virtuels. La classe CountUserIterations compte le nombre de fois que le code est exécuté par un utilisateur virtuel.

La classe CountAllIterations compte le nombre de fois qu'elle est exécutée par tous les utilisateurs virtuels d'une machine JVM donnée et renvoie la valeur sous forme de chaîne.

package customcode;

import com.ibm.rational.test.lt.kernel.services.ITestExecutionServices;

/**
 * La classe CountAllIterations compte le nombre de fois que le code est exécuté
 * par tous les utilisateurs virtuels d'une machine JVM donnée et renvoie la valeur
 * sous forme de chaîne.  If all virtual users on an agent are running in the same
 * JVM (as would typically be the case), this class will count the number of
 * times it is run on the agent.
 */

/**
 * @author IBM Custom Code Samples
 */

public class CountAllIterations implements
        com.ibm.rational.test.lt.kernel.custom.ICustomCode2 {
    private static int numJVMLoops = 0;

    /**
     * Les instances de cette classe seront créées avec le constructeur sans argument.
     */
    public CountAllIterations() {
    }

    public String exec(ITestExecutionServices tes, String[] args) {
        return Integer.toString(++numJVMLoops);
    }
}  

La classe CountUserIterations compte le nombre de fois que le code est exécuté par un utilisateur virtuel.

package customcode;

import com.ibm.rational.test.lt.kernel.services.ITestExecutionServices;
import com.ibm.rational.test.lt.kernel.IDataArea;

/**
 * La classe CountUserIterations compte le nombre de fois que le code est exécuté
 * par un utilisateur virtuel individuel et renvoie ce nombre sous forme de chaîne.
 */

/**
 * @author IBM Custom Code Samples
 */

public class CountUserIterations implements
        com.ibm.rational.test.lt.kernel.custom.ICustomCode2 {

    /**
     * Les instances de cette classe seront créées avec le constructeur sans argument.
     */
    public CountUserIterations() {
    }

    public String exec(ITestExecutionServices tes, String[] args) {
        IDataArea userDataArea = tes.findDataArea(IDataArea.VIRTUALUSER);
        final String KEY = "NumberIterationsPerUser";

        Number numPerUser = (Number)userDataArea.get(KEY);
        if (numPerUser == null) {
            numPerUser = new Number();
            userDataArea.put(KEY, numPerUser);
        }
                        
        numPerUser.value++;
        return Integer.toString(numPerUser.value);
    }
                
    private class Number {
        public int value = 0;
    }
}

Feedback