如何在 IBM Mobilefirst TestWorkbench 8.6.0.1 中捕获数据、存储数据、执行数学运算和验证数据

How to Capture data, store data, perform math operations and verify data in IBM Mobilefirst TestWorkbench 8.6.0.1

工具:IBM Mobilefirst TestWorkbench 8.6.0.1
OS: Windows 7

有一个显示 3 个文本框的应用程序,两个用于输入数字,第三个显示数字的总和
记录一个测试。 (在两个文本框中分别输入数字;结果显示在第三个测试框中)

播放时,是否可以将数字存储在变量中,添加它们并交叉验证应用程序显示的结果?

以上将帮助我们验证银行应用程序中的交易

是的,有可能

  • 首先,在你的脚本中创建一个变量(打开'Text Resources'节点,对 点击 'Test Variables' 并选择 'Add' 菜单
  • 然后,在移动数据视图中,右键单击该元素 包含数字,然后选择 'Create a variable assignment from Text' 并将值分配给您之前创建的变量
  • 对第二个变量做同样的事情
  • 然后在您想要求和的脚本点,只需添加自定义代码拆分脚本(菜单 'Split Mobile or Web UI actions..')并插入自定义代码(菜单 'Insert > Custom Code'您刚刚创建的 'In application' 节点)
  • 将 2 个变量添加为自定义代码的参数并实现总和

您可以在此处找到自定义代码示例 http://www-01.ibm.com/support/knowledgecenter/SSBLQQ_8.7.0/com.ibm.rational.test.lt.common.doc/topics/textndteswcc.html?cp=SSBLQQ_8.7.0%2F0-6-11-0&lang=en

多米尼克

在下面找到我用于执行我在问题中提到的操作的自定义代码(稍作编辑)

在"Custom Code Details"中添加参数。代码中的 args[0] 是指在 "Custom Code Details".

中添加的第一个参数
package customcode;
import org.eclipse.hyades.test.common.event.VerdictEvent;
import com.ibm.rational.test.lt.kernel.services.ITestExecutionServices;

/**
 * @author unknown
 */
public class Class implements
        com.ibm.rational.test.lt.kernel.custom.ICustomCode2 {

    /**
     * Instances of this will be created using the no-arg constructor.
     */
    public Class() {
    }

    /**
     * For javadoc of ICustomCode2 and ITestExecutionServices interfaces, select 'Help Contents' in the
     * Help menu and select 'Extending Rational Performance Tester functionality' -> 'Extending test execution with custom code'
     */
    public String exec(ITestExecutionServices tes, String[] args) {

        String L4_InitBalance = args[1];
        String L1_InitBalance = args[0];

        String L4_FinalBalance = args[3];
        String L1_FinalBalance = args[2];



        if((L4_InitBalance == L4_FinalBalanc)&&(L1_InitBalance == L1_FinalBalance))
            tes.getTestLogManager().reportVerificationPoint("SFT PASSED",VerdictEvent.VERDICT_PASS,"SFT has PASSED");
        else
            tes.getTestLogManager().reportVerificationPoint("SFT FAILED",VerdictEvent.VERDICT_FAIL,"SFT has FAILED");

        return null;
    }

}